【发布时间】:2017-05-25 11:40:00
【问题描述】:
我的网站已经上线,订单确认电子邮件既没有发送给客户也没有发送给管理员。我正在使用 Magento 1.9.3.2。
【问题讨论】:
标签: magento magento-1.9
我的网站已经上线,订单确认电子邮件既没有发送给客户也没有发送给管理员。我正在使用 Magento 1.9.3.2。
【问题讨论】:
标签: magento magento-1.9
请检查Cron作业是否正常工作,您可以通过安装AOE SCHEDULER扩展轻松检查,确保System > Configuration > Advanced > System > Cron中的设置正确另外检查您是否在@中输入了发件人电子邮件987654323@
【讨论】:
补充一下,在 Magento 中预先配置了开箱即用的 cronjobs,但是您需要在服务器的 cron 选项卡上设置实际作业。
在 SSH 中打开 crontab;
crontab -e
添加这个;
### MAGENTO CRON ###
*/1 * * * * cd /path/to/magento/ && sh cron.sh
将 /path/to/magento 替换为您安装的实际路径。
【讨论】:
Magento 允许两种方式发送电子邮件,如下所示:
1) 使用 cron 2)避免cron
如果你想不使用 cron,请使用以下更改:
在 app/code/core/Mage/Sales/Model/Order.php 打开您的 order.php 文件
然后改变:
//$mailer->setQueue($emailQueue)->send(); **// Comment this code.**
到:
$mailer-> send();
注意:以上变化不是磁电机的标准方式,请实现文件覆盖方式。
转到:app/design/frontend/base/default/template/checkout/success.phtml:
在文件代码顶部添加以下代码:
$order = Mage::getModel('sales/order');
$incrementId = Mage::getSingleton('checkout/session')->getLastRealOrderId();
$order->loadByIncrementId($incrementId);
try
{
$order->sendNewOrderEmail();
}
catch (Exception $ex)
{
echo "Email Not Sent...";
}
$customer = Mage::getSingleton('customer/session')->getCustomer();
$email = $customer->getEmail();
【讨论】: