Atualizei meu site para 1.9.1 e agora meus clientes não estão recebendo o e-mail de confirmação do pedido.
Tentei enviar através do painel de administração, mas nada acontece, também nenhum email de atualização está sendo recebido.
email
upgrade
cron
magento-1.9.1.1
user16826
fonte
fonte
Respostas:
fonte
cron.sh
está funcionando! Acabamos de passar um dia inteiro depurando isso apenas para descobrir que o cron estava configurado incorretamente.Existem 2 métodos para enviar e-mails da nossa loja Magento 1.
Se você deseja evitar o cron:
Abra seu arquivo order.php em
Linha # 1356,1450,
mudança
para:
Em
app/design/frontend/base/default/template/checkout/success.phtml
: adicione a seguinte linha Página de sucesso principal para o envio de email diretofonte
removi o seguinte código da fila de e-mails do Template.php e comecei a receber e-mails quando o pedido é feito pelo cliente ou quando clico em enviar e-mail na guia "Vendas / pedidos" do painel de administração.
O Magento havia configurado o e-mail do pedido para ser enviado pelo trabalho de agendamento em vez do e-mail instantâneo ... provavelmente por motivo de desempenho? (Não sei por que, sou muito novo no magento) ... no entanto, vou colocar esse código de volta o Template.php e encontre uma maneira de definir e executar o trabalho de agendamento a ser executado a cada 5 minutos ...
Template.php está localizado em => /app/code/core/Mage/Core/Model/Email/Template.php
fonte
Há duas soluções da seguinte maneira:
Solução 01: Usando cron
Sistema> Configuração> Avançado> Sistema> Cron
As configurações padrão são:
Antes de tudo, o Magento 1.9+ depende completamente de tarefas cron para enviar e-mails transacionais. Se você não tinha tarefas cron configuradas corretamente antes, precisará fazê-lo agora.
Antes de tudo, verifique se você configurou tarefas cron no administrador do Magento em
As configurações padrão são:
Gere agendamentos a cada 15 agendamentos antecipados para 20 ausentes, se não executados em 15 dias.
Existem pessoas sugerindo que essas configurações devem ser alteradas, mas como elas parecem não concordar com a melhor combinação, prefiro deixá-las como estão.
Você precisará acessar o painel de controle da hospedagem e configurar os trabalhos cron. No cPanel, está em Avançado> Trabalhos Cron. Configure-os para serem executados a cada cinco minutos e use este comando:
Verifique se o caminho acima está correto e se o arquivo cron.php está realmente lá na raiz da sua instalação do Magento (se você acabou de atualizar, deve estar). Mude o nome de usuário para a conta correta.
Agora, inicialmente cometi o erro de seguir o conselho dos desenvolvedores do xtento.com que dizem usar uma sequência de comandos wget: wget -O / dev / null -q http://www.YOURDOMAIN.com/PATH_TO_MAGENTO/cron. php
Os emails transacionais serão enviados instantaneamente.
fonte
Com o Magento 1.9, todos os emails serão colocados na fila e posteriormente enviados pelo Cron.
Nota de versão do Magento 1.9
Se você deseja que seus e-mails de transação sejam enviados pelo Cron, defina o cron em Sistema > Configuração > Sistema, na guia Cron OU crie o cron no Cpanel, direcione-o para o seu cron.sh ou cron.php localizado no diretório raiz do Magento.
fonte
Basta instalar a extensão "SMTP Pro Email": http://www.magentocommerce.com/magento-connect/smtp-pro-email-free-custom-smtp-email.html
Preencha com seus detalhes SMTP personalizados e pronto.
Levei dois dias inteiros para descobrir. Não são necessários trabalhos Cron, embora se você deseja que os trabalhos cron funcionem e não faça o acima, você pode fazer o seguinte:
Edite cron.php no diretório raiz do Magento
Depois de:
adicione esta linha de código:
Configurar Trabalho Cron
No painel C, abra a seção Tarefas Cron
Crie uma tarefa cron que execute o seguinte comando a cada 15 minutos:
fonte
No Magento 1.9.1.0, o Magento adicionou um novo recurso: Eles armazenam o email do pedido na
core_email_queue
tabela para enviar o email dos pedidos. Temos que definir ocron.php
servidorO
cron.php
arquivo define acore_email_queue_send_all
tabela de agendamento no cron. Quando o crone executa o método "send" chamado fromMage_Core_Model_Email_Queue
. Eles enviam o correio para o cliente.Portanto, a correção acima está funcionando sem nenhuma alteração no arquivo principal.
fonte
Basta fazer a configuração do cron no seu servidor, conforme o comando abaixo, e você começará a receber e-mails de vendas.
Use configurações comuns como "*****"
Precisa substituir YOUR_USER_NAME e Path_to_cron.php pelos seus.
fonte
Usando o n98-magerun, executei o seguinte:
n98-magerun sys:cron:run core_email_queue_send_all
Ou cronometrar, se você não quiser executá-lo o tempo todo:
watch -n 10 n98-magerun sys:cron:run core_email_queue_send_all
Isso envia todos os emails na fila a cada 10 segundos.
fonte
para o servidor godaddy, use o seguinte código ao configurar o cronjob:
Isso será executado a cada minuto.
fonte
se SOMENTE o email do pedido não estiver sendo enviado, é porque o Magento enfileira apenas os emails do pedido e os salva para enviá-los em lotes. Se você não tiver a configuração do Heartbeat Cron, eles nunca sairão da fila do Magento.
Você está vendo outros e-mails do Magento saírem porque são enviados diretamente do Magento para o seu daemon de mala direta. As filas do Magento (como o e-mail do pedido) nem são entregues ao daemon do mailer até que o Hearbeat Cron seja executado.
Para forçá-los a sair ... navegue até http://yourmagentodomain.com/cron.php e continue atualizando a página a cada cinco minutos e você verá os e-mails de pedidos em fila começarem a sair. O Heartbeat Cron deve fazer isso por você. Ah, e quando você navega para esse arquivo cron.php, a página deve estar em branco, portanto não se assuste ... ela funcionará.
fonte
Eu tive o mesmo problema e descobri que estava relacionado a uma extensão. Os anexos de email da Fooman agora foram atualizados para a v0.10.4. As versões abaixo da v0.10.3 não funcionam com o Magento 1.9.
fonte
Eu segui a base de conhecimento para fazê-lo funcionar: http://www.magentocommerce.com/knowledge-base/entry/ee1141-ce191-responsive-email#contact-info
Na parte "Localizando e-mails transacionais", depois de seguir as instruções anteriores, copiar para / en_UK finalmente levou os e-mails (incluindo os que não foram enviados anteriormente), também tivemos um problema com a página de confirmação do pedido não sendo exibida para os clientes em conclusão. Isso foi corrigido também.
Por exemplo, para a localidade en_GB, você precisará copiar os arquivos localizados em:
app / locale / pt_BR / template / email
para o local:
app / locale / pt_BR / modelo / email
fonte
Se o seu sistema de email (smtp, zend_mail) funciona bem; desabilitar o mailQueue pode resolver seu problema.
/app/code/core/Mage/Core/Model/Email/Template.php
Alterar linha 407
para
fonte
Se você possui a extensão SMTPpro, tente desabilitá-la. E verifique novamente. Todos os emails funcionam bem e você só precisa configurar corretamente.
fonte
A melhor maneira é fazer uma cópia do seu aplicativo / código / core / Mage / Core / Model / Email / Template / Mailer.php
Para a sua pasta local app / code / local / Mage / Core / Model / Email / Template / Mailer.php
Então comente esta linha na linha 76
Então você está pronto. Não há necessidade de modificar o modelo success.phtml. : D
fonte