Email de Alerta de produtos não sendo enviado
Algumas pessoas tem dificuldade para conseguir enviar os alertas de produtos em estoque para os clientes, essa é uma ferramenta excelente porque automaticamente envia uma notificação para o cliente de que o produto que ele deseja está disponível novamente em estoque.
O problema é que o admin do magento não grava as configurações do módulo no arquivo config.xml então o que temos que fazer é o seguinte.
1ª parte.
edite o arquivo app/code/local/Mage/ProductAlert/etc/config.xml (copie esse arquivo do diretorioapp/code/core/Mage/ProductAlert/etc/, você não quer editar arquivos do core do magento)
mude a linha:
-----------------------------------------
<allow_stock>0</allow_stock>
para:
<allow_stock>1</allow_stock>
-----------------------------------------
e adicione a linha:
-----------------------------------------
<schedule><cron_expr>* * * * *</cron_expr></schedule>
-----------------------------------------
depois do seguinte:
-----------------------------------------
<crontab>
<jobs>
<catalog_product_alert>
-----------------------------------------
no final o config.xml fica mais ou menos assim, as alterações estão em vermelho.
-----------------------------------------
<default>
<catalog>
<productalert>
<allow_price>0</allow_price>
<allow_stock>1</allow_stock>
<email_price_template>catalog_productalert_email_price_template</email_price_template>
<email_stock_template>catalog_productalert_email_stock_template</email_stock_template>
<email_identity>general</email_identity>
</productalert>
<productalert_cron>
<error_email><![CDATA[]]></error_email>
<error_email_template>catalog_productalert_cron_error_email_template</error_email_template>
<error_email_identity>general</error_email_identity>
</productalert_cron>
</catalog>
</default>
<crontab>
<jobs>
<catalog_product_alert>
<schedule><cron_expr>* * * * *</cron_expr></schedule>
<run>
<model>productalert/observer::process</model>
</run>
</catalog_product_alert>
</jobs>
</crontab>
</config>
-----------------------------------------
2ª Parte
no cpanel de sua hospedagem, crie uma tarefa cron com os seguintes argumentos
No horário coloque * * * * *
isso repetirá a ação todo minuto
e no comando coloque
-----------------------------------------
GET http://seu-dominio.com/cron.php
-----------------------------------------
Pronto, lembre-se de atualizar o cache CONFIG e testar para ver se você está recebendo o produto (remova um produto do estoque, assine a notificação com um email seu, retorne o produto para o estoque e espere 1 minuto.)
Estou testando a versão que realiza a tarefa apenas duas vezes por dia, colocarei o resultado aqui.
O problema é que o admin do magento não grava as configurações do módulo no arquivo config.xml então o que temos que fazer é o seguinte.
1ª parte.
edite o arquivo app/code/local/Mage/ProductAlert/etc/config.xml (copie esse arquivo do diretorioapp/code/core/Mage/ProductAlert/etc/, você não quer editar arquivos do core do magento)
mude a linha:
-----------------------------------------
<allow_stock>0</allow_stock>
para:
<allow_stock>1</allow_stock>
-----------------------------------------
e adicione a linha:
-----------------------------------------
<schedule><cron_expr>* * * * *</cron_expr></schedule>
-----------------------------------------
depois do seguinte:
-----------------------------------------
<crontab>
<jobs>
<catalog_product_alert>
-----------------------------------------
no final o config.xml fica mais ou menos assim, as alterações estão em vermelho.
-----------------------------------------
<default>
<catalog>
<productalert>
<allow_price>0</allow_price>
<allow_stock>1</allow_stock>
<email_price_template>catalog_productalert_email_price_template</email_price_template>
<email_stock_template>catalog_productalert_email_stock_template</email_stock_template>
<email_identity>general</email_identity>
</productalert>
<productalert_cron>
<error_email><![CDATA[]]></error_email>
<error_email_template>catalog_productalert_cron_error_email_template</error_email_template>
<error_email_identity>general</error_email_identity>
</productalert_cron>
</catalog>
</default>
<crontab>
<jobs>
<catalog_product_alert>
<schedule><cron_expr>* * * * *</cron_expr></schedule>
<run>
<model>productalert/observer::process</model>
</run>
</catalog_product_alert>
</jobs>
</crontab>
</config>
-----------------------------------------
2ª Parte
no cpanel de sua hospedagem, crie uma tarefa cron com os seguintes argumentos
No horário coloque * * * * *
isso repetirá a ação todo minuto
e no comando coloque
-----------------------------------------
GET http://seu-dominio.com/cron.php
-----------------------------------------
Pronto, lembre-se de atualizar o cache CONFIG e testar para ver se você está recebendo o produto (remova um produto do estoque, assine a notificação com um email seu, retorne o produto para o estoque e espere 1 minuto.)
Estou testando a versão que realiza a tarefa apenas duas vezes por dia, colocarei o resultado aqui.
Comentários
Postar um comentário