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

Jam*_*mes 4 magento magento-1.8

将我的网站从1.4升级到1.8后,我无法从管理面板发送订单电子邮件.

当新订单下达时,客户会收到订单电子邮件,但是当我尝试从管理面板The order email has been sent消息显示重新发送订单电子邮件时,客户和管理员都不会收到电子邮件.

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

小智 15

我自己一直在研究这个问题.我已经按照代码和函数回到这个函数"public function sendNewOrderEmail()"中:

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

从第1270行开始是以下代码:

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

这是检查sales_flat_order数据库表以查看电子邮件是否已经发送给客户,如果是这样只是为了返回,但是这不会发送电子邮件并且应该抛出错误.所以我会说这是某个地方的错误.要修复它,您可以重新发送订单/发票电子邮件等.

复制

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

应用程序/代码/本地/法师/销售/型号/ Order.php

并注释掉第1273行

if ($this->getEmailSent()) {
            //return $this;
        }
Run Code Online (Sandbox Code Playgroud)

为我的魅力.但字面上只有第二次测试它.

使用ver测试 1.8.1