2

我想要做的是在 magento 的核心交易电子邮件中添加一个回复字段。类似于使用密件抄送在此帖子中归档的内容,但用于回复。有什么想法吗?

更新:只是为了澄清一点。在magento TEMPLATE 类中,可以添加replyTo 标头(核心功能),但在MAILER 类中则不能这样做。这就是我需要的。

4

3 回答 3

3

无需扩展任何类。

只需使用:

$mailTemplate = Mage::getModel('core/email_template');
$mailTemplate->setReplyTo('test@example.com');
$mailTemplate->sendTransactional($templateId, $sender, $recipient, '', $vars, $storeId);
于 2018-01-27T17:03:40.500 回答
2

所以我设法通过扩展 MAILER 类来解决这个问题。

  • 围绕第 74 行,函数 send(),您需要添加$emailTemplate->setReplyTo($this->getReplyTo());

  • 还将它添加到同一个类的函数中:

    public function setReplyTo($replyto) { return $this->setData('replyto', $replyto); } public function getReplyTo() { return $this->_getData('replyto'); }

    • 最后,当您在扩展程序上设置 replyTo (:P) 时,您只需要调用此 setReplyTo 即可。

      $mailer = Mage::getModel('core/email_template_mailer');

谢谢 VladFR,但我无法弄清楚如何实施您的建议。

于 2016-02-26T11:33:52.497 回答
1

Reply-To 是标准的电子邮件标头:RFC 5322,第 3.6.2 节,格式为

"Reply-To:" address-list

因此,您可以像添加自定义标题一样添加它:

$mail->addHeader("Reply-To", "reply.to@example.com");

//Mage has addReplyTo() depending on version
$mail->addReplyTo('email@example.com', 'Name');

另请参阅Zend_Mail 的 Zend 文档,这是 Magento 使用的。

于 2016-02-26T10:43:19.847 回答