Arquivo da tag: Magento

Newsletter no Magento 1.4.2.0

Ao configurar o Magento para um cliente, cheguei na parte de newsletter e penei pra botar o bicho pra funcionar. Compartilho aqui a solução que encontrei junto com Marcelo Aires (@mavcomputer) com vocês:

Tentando colocar uma news na fila para ser enviada, quando clicava em ‘Save Newsletter’ nada acontecia. Ao analisar a página com o Firebug no Firefox, o mesmo mostrava que, logo que a página era carregada, no arquivo prototype.js, na linha 4021, a variável element tinha valor null e, ao clicar em ‘Save Newsletter’, que queueControl não havia sido definido, sem dizer em qual arquivo:

Erro no Firebug

Erro no Firebug

O erro do prototype, que é um framework javascript, não interfere no funcionamento da news, então vamos deixá-lo de lado.
O erro do queueControl undefined pode ser corrigido no arquivo

diretório_do_magento/app/design/adminhtml/default/default/template/newsletter/queue/edit.phtml

que, na parte do javascript, tem o seguinte conteúdo:


Como podemos observar, na linha 68 a função switchStore é chamada e a mesma usa queueControl (linha 73), que só é definida na linha 82. A solução é mover a linha 68, que é onde toda a ação é executada, para o final do arquivo, ficando assim (pode ser necessário limpar o cache do Magento após esta ação):


Bom, agora já se consegue enviar a news para a fila. Mas aí vem outro problema… a news fica eternamente na fila, com status Not Sent, e não é enviada nunca!
A solução dessa vez foi adicionar a seguinte linha no crontab do servidor:

*/5 * * * * /usr/bin/php5 -f /home/auere/public_html/magento/cron.php

/usr/bin/php5 é o caminho absoluto do php e pode ser obtido com o comando:

which php

/home/auere/public_html/magento/cron.php é o caminho absoluto até o arquivo cron.php do Magento.