发送订单电子邮件从管理员不在Magento 1.8工作



从1.4升级到1.8后,我无法从管理面板发送订单电子邮件。

当一个新订单被放置时,客户收到订单电子邮件,但是当我试图从管理面板重新发送订单电子邮件时,The order email has been sent消息显示,但客户和管理员都没有收到电子邮件。

我打开日志记录并尝试发送订单电子邮件,但没有记录。有人遇到这个问题或找到解决方案吗?

我自己也在调查这件事。我已经按照代码和函数回到这个函数"public function sendNewOrderEmail()"在:

应用程序/代码/核心/法师/销售/模型/Order.php

从第1270行开始的

是以下代码:

$emailSentAttributeValue = $this->load($this->getId())->getData('email_sent');
    $this->setEmailSent((bool)$emailSentAttributeValue);
    if ($this->getEmailSent()) {
        return $this;
    }

这是检查sales_flat_order db表,看看电子邮件是否已经发送给客户,如果已经发送,则返回,但这不会发送电子邮件,并且应该抛出一个错误。所以我会说这是某个地方的bug。修复它,以便您可以重新发送订单/发票电子邮件等。

复制

应用程序/代码/核心/法师/销售/模型/Order.php

app/代码/地方/法师/销售/模型/Order.php

并注释掉第1273行

if ($this->getEmailSent()) {
            //return $this;
        }

对我很有魅力。但实际上只有第二次测试了它。

使用ver测试。1.8.1

我也在CE 1.9.1中遇到订单邮件不发送的问题,但过了一段时间后发现了这个问题:

从Magento CE 1.9.1开始,Magento在订购过程中不直接发送订单电子邮件。相反,邮件被排队并由cron发送。因此,请确保正确配置Magento cronjob。

也可参考:

http://www.magentocommerce.com/knowledge-base/entry/ee1141-ce191-responsive-email cronhttp://www.magentocommerce.com/knowledge-base/entry/ce18-and-ee113-installing install-cron

最新更新