Magento

Configurando um servidor SMTP no Magento 1.9

Post ensinando a como configurar um servidor SMTP no Magento sem complicações.

Você pode instalar um módulo ou até mesmo utilizar as praticas corretas para sobrescrever os arquivos do Core no Magento 1.x, porém o ótimo é inimigo do bom.

Então não vamos perder tempo.

Edite Template.php

Edite: app/code/core/Mage/Core/Model/Email/Template.php

Faça uma cópia de segurança do arquivo Template.php.

Altere:

try {
 $mail->send();
 $this->_mail = null;
}
catch (Exception $e) {
 $this->_mail = null;
 Mage::logException($e);
 return false;
}

return true;

Por:

$ssl = ""; // SSL / TLS / vazio
$port = "PORTA";
$username = "USUARIO";
$password = "SENHA";
$host = "smtp.exemplo.com";

$config = array( 'ssl' => $ssl, 'port' => $port, 'auth' => 'login', 'username' => $username, 'password' => $password);

$transport = new Zend_Mail_Transport_Smtp($host , $config); 

try{ 
 $mail->send($transport); 
 $this->_mail = null; 
} 
 catch(Exception $e) { return false;
} 

return true;

Está feito, altere os valores das variáveis $ssl, $port, $username, $password e $host de acordo com os dados do servidor SMTP que você estará utilizando.

Para o Gmail utilize esses valores, só altere o usuário / senha.

$ssl = "ssl";  
$port = "465";
$username = "USUARIO";
$password = "SENHA";
$host = "smtp.gmail.com";

 

Ver comentários

  • Refiz e não gerou mais erro, mas não consigo receber e-mails de forma alguma, nem com o e-mail do servidor de e-mail da hospedagem e nem mesmo com um e-mail da google, conforme apresentado a configuração acima. Poderia me apoiar a compreender como posso fazer funcionar esta programação acima?

  • Boa noite,

    Teste e gera erro:

    Parse error: syntax error, unexpected '*', expecting function (T_FUNCTION) in /home/loja/www/app/code/core/Mage/Core/Model/Email/Template.php on line 324

    Cópia fiel da programação acima poderia me auxiliar?

    • Boa tarde Najara, exatamente, no inicio do Post menciono isso..
      Você pode utilizar um módulo ou utilizar do próprio recurso do Magento para sobrescrever arquivos do core.. recriando exatamente a mesma estrutura de pasta, até chegar no arquivo no diretório app/code/local/Mage.
      Agora este tutorial, como outros disponíveis em meu Blog, são para programadores inexperientes ou até mesmo para os próprios lojistas.

Post Recentes

Bloquear .env e .git no nginx: as regras que ainda deixam o arquivo vazar

Negar /.env no nginx parece resolvido até alguém pedir /wp-content/uploads/.env ou backup.sql. As regras que testei e os furos que…

14 horas atrás

Canonical errado no Yoast: corrigindo pelo filtro wpseo_canonical

O Search Console marca suas páginas 2, 3 e 4 como alternativas da página 1? Ajuste a tag canônica do…

17 horas atrás

Layout XML do Magento 2: remover bloco de módulo de terceiro

Um módulo de terceiro plantou um banner no topo da loja e você não quer desinstalar nada: tire o bloco…

1 dia atrás

Restaurar dump do Magento 2 em outro servidor: trocar a base_url no SQL

Importou o banco de produção e o site pula para o domínio antigo? Rode o UPDATE em core_config_data, limpe o…

2 dias atrás

Criar exceção customizada em PHP: quando estender Exception compensa

Seu catch trata pedido inexistente e banco fora do ar do mesmo jeito. Veja como criar exceção customizada em PHP…

3 dias atrás

DataProvider Magento 2: form do admin abre com campos vazios ao editar

O form do admin salva mas abre em branco na edição: veja o getData() indexado pelo id da entidade e…

4 dias atrás