我的网站上线了,订单确认电子邮件既没有发送给客户也没有发送给管理员。我正在使用Magento 1.9.3.2。
请检查 Cron 作业是否正常工作,您可以通过安装 AOE 调度程序扩展轻松检查,确保您在 System > Configuration > Advanced > System > Cron
中设置正确 还要检查您是否在System > configuration> Sales> Sales email > Order emails.
中输入了发件人电子邮件
只是为了补充上述内容,开箱即用的cronjobs是在Magento中预先配置的,但是您需要在服务器cron选项卡上设置实际作业。
在 SSH 中打开 crontab;
crontab -e
添加这个;
### MAGENTO CRON ###
*/1 * * * * cd /path/to/magento/ && sh cron.sh
将/path/to/magento 替换为安装的实际路径。
Magento允许2种方式发送电子邮件,如下所示:
1( 使用 cron2(避免克龙
如果你想没有cron,那么请使用下面的更改:
打开您的订单.php文件 - 应用程序/代码/核心/法师/销售/模型/订单.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();