2011-03-17 168 views
0

我希望更改客户与朋友分享自己的愿望清单时发送的share wishlist电子邮件的发件人电子邮件地址,我试图将custmer电子邮件作为发件人地址和客户名称作为从名字,认为它可以在管理员来完成,你只可以把它改成一个又一个,但我想在客户的电子邮件,在这里需要一些帮助在magento中更改共享wishlist邮件的发件人电子邮件地址

感谢

回答

0

浏览一下代码后,它似乎是这个电子邮件是发送从

app/code/core/Mage/Wishlist/controllers/IndexController.php 

所以,你需要覆盖此控制器。我从来没有做过这样的事情,但它是可行的。有一个话题here,如果你谷歌'magento覆盖控制器',你还会发现很多信息。

之后,您必须重新实施(意思是复制和编辑)方法sendAction()。在它是一个呼叫

$emailModel->sendTransactional(); 

我也想你应该离开发件人地址,这家店的,因为它 设置到另一个地址可能将邮件标记为垃圾邮件。但是如果你想 这样做,只需将此调用的第二个参数更改为具有键'名称' 和'email'和期望值的数组。

但我强烈建议设置Reply-To标头。这是可能的,因为这个模型使用一个Zend_Mail对象来完成脏的工作,并把这个对象当作一个单例。这意味着如果您将它创建为第一个并对其进行配置,则将使用此配置发送下一封邮件。在代码中,改变

foreach($emails as $email) { 
    $emailModel->sendTransactional(
     Mage::getStoreConfig('wishlist/email/email_template'), 
//snip 

foreach($emails as $email) { 
    $mail = $emailModel->getMail(); 
    $mail->setReplyTo($customer->getEmail()); 
    $emailModel->sendTransactional(
     Mage::getStoreConfig('wishlist/email/email_template'), 
//snip 

成功

+0

谢谢,我会记住你的建议,再次感谢 – 2011-03-22 13:51:11

1

我会不这样做。相反,我会将发件人地址设置为我的网上商店的地址,并将Reply-To标题设置为收件人朋友的标头。从类似地址的欺骗行为可能会使您的电子邮件陷入垃圾邮件陷阱。

+0

我甚至不知道如何改变重播到,这就是我想要找出来,但我不要以为改变地址可能是一个坏的方法,实际上,这就是我想要做的,任何想法如何去做,谢谢 – 2011-03-17 18:10:42

相关问题