Setting SMTP For Magento

Here are the complete steps to Setting SMTP for magento:-

  1. Login to magento admin and go to System -> configuration ->advanced -> system ->mail sending settings.
  2. Here insert your SMTP setting like your SMTP server name and SMTP port etc. (default port is 25).
  3. Enable email communications.
  4. Overrirde your Template model located at (app/code/core/Mage/core/Model/Email/Template.php).
  5. To override template model you can copy this Template.php file in your local directory with same directory structure.
  6. And change this model getMail() method like this:-


public function getMail()
      if (is_null($this->mail))
		$my_smtp_host = Mage::getStoreConfig('system/smtp/host');
          	$my_smtp_port = Mage::getStoreConfig('system/smtp/port');
		$config = array('port' => $my_smtp_port, 'auth' => 'login',
                'username' => '', 'password' => 'yourpassword');
                $transport = new Zend_Mail_Transport_Smtp($my_smtp_host, $config);
                $this->mail = new Zend_Mail('utf-8');
       return $this->mail;   

That’s all required to setup SMTP in magento. During our Magento development project we face problem with order and other email alerts. Many time its due to issues with php mail services on the server. Setting up SMTP to send email can resolve such issues.