Magento: Inviare mail via SMTP con o senza estensioni

Alcuni piani hosting non prevedono l’invio mail via PHP, come richiesto da Magento per inviare messaggi di posta elettronica. In altri casi le mail inviate via PHP vengono riconosciute come SPAM dai provider email e quindi spesso ignorate dagli utenti che non riescono a ricevere di fatto le mail.

Per questo motivo vedremo come inviare le email via SMTP, inserendo ad esempio le credenziali dell’account GMail per inviare tramite la posta di Google.

In Magento esistono principalmente due stade percorribili per arrivare a questo risultato desiderato:

Personalizzare il codice di Magento

Questa è la strada da preferire, in questo modo si evita di appesantre il sistema con estensioni. Ecco la procedura:

Copia il file app/code/core/Mage/core/Model/Email/Template.php in una cartella locale

Modifica la funzione getMail() così, inserendo le tue credenziali:

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' => 'indirizzo email qui'<script type="text/javascript">
/* <![CDATA[ */
(function(){try{var s,a,i,j,r,c,l,b=document.getElementsByTagName("script");l=b[b.length-1].previousSibling;a=l.getAttribute('data-cfemail');if(a){s='';r=parseInt(a.substr(0,2),16);for(j=2;a.length-j;j+=2){c=parseInt(a.substr(j,2),16)^r;s+=String.fromCharCode(c);}s=document.createTextNode(s);l.parentNode.replaceChild(s,l);}}catch(e){}})();
/* ]]> */
</script>',
'password' => 'la password qui' );
$transport = new Zend_Mail_Transport_Smtp($my_smtp_host, $config);
Zend_Mail::setDefaultTransport($transport);
$this->_mail = new Zend_Mail('utf-8');
}
return $this->_mail;
}

Vai, dal pannello di amministrazione, su Sistema-> Configurazione-> Avanzate> Sistema-> Impostazioni invio posta ed inserisci l’indirizzo SMTP e la porta e la configurazione sarà terminata.

Installare estensioni per invio tramite SMTP

Questo è un modo più semplice, è sufficiente installare una di queste estensioni:

http://www.magentocommerce.com/magento-connect/smtp-pro-email-free-custom-smtp-email.html

http://www.magentocommerce.com/magento-connect/advanced-smtp-artson-it.html

Ricordati di fare logout e nuovamente il login dopo l’installazione di una di queste estensioni e di configurarle correttamente, tramite le loro sezioni semplici ed intuitive.

Se hai dubbi, difficoltà o considerazioni in merito lascia un commento al quale risponderemo con piacere.

We will be happy to hear your thoughts

Leave a reply