【问题标题】:Magento Admin “Send Email” button not workingMagento 管理员“发送电子邮件”按钮不起作用
【发布时间】:2014-06-28 10:50:51
【问题描述】:

我在 Magento 管理面板中的订单视图页面上的“发送电子邮件”按钮有问题。我在 Magento 版本的两个单独安装中遇到了这个问题。 1.8.1.0 在四台服务器上,所以我现在假设它是一个错误。我刚刚安装了一个全新的版本并再次测试了同样的问题。

我已经将 1.7 的新副本与 1.8.1 并排安装。 1.7 发送该特定电子邮件就好了,1.8.1 没有。

有其他人经历过这种情况或对调试过程有任何建议吗?

【问题讨论】:

  • @woomanhodal 检查您的 magento 和 apache 日志。

标签: magento email magento-1.8


【解决方案1】:

我自己一直在研究这个。我已经按照代码和函数回到了这个函数“public function sendNewOrderEmail()”中:

app/code/core/Mage/Sales/Model/Order.php

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

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

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

复制

app/code/core/Mage/Sales/Model/Order.php

app/code/local/Mage/Sales/Model/Order.php

并注释掉第 1273 行

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

对我很有魅力。但实际上只有这一秒测试了它。

使用版本测试。 1.8.1

【讨论】:

  • 谢谢!我刚刚在 1.9.0.1 上进行了测试,它似乎工作得很好!您是否知道此修复有任何潜在的副作用?
  • 该代码仅检查电子邮件是否已发送,因此唯一的副作用是,如果您再次发送电子邮件,客户可能会认为他们重复订购或开票两次。但只有在客户提出要求或未收到原始订单/发票时,您才会重新发送订单或发票电子邮件。
  • 只是插话说我刚刚在 1.9.0.1 中测试过它,它也对我有用。
  • 我已经在 1.9.0.1 上安装了这个“修复”,但我仍然无法让它工作。有没有人有什么想法?!
【解决方案2】:

我在全新安装 1.8、1.8.1 甚至 1.9 时遇到了同样的问题。我现在的解决方案,因为它似乎还没有被承认为一个错误,只是备份到 1.7.2。希望这个错误得到修复,以便我们可以升级。

【讨论】:

  • 我经历了同样的过程。试试 ScarletRed 的修复,它似乎适用于 1.8.1 和 1.9.0.1。
猜你喜欢
  • 2014-06-30
  • 1970-01-01
  • 2010-11-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多