在Magento电子邮件模型中添加密件抄送

时间:2013-09-06 09:52:15

标签: magento

我想使用以下magento模型添加密送。

我尝试使用以下型号添加addBcc('')

但是不起作用。

$mail = Mage::getModel('core/email')
                    ->setToName($senderName)
                    ->setToEmail($customerEmail)                    
                    ->setBody($processedTemplate)
                    ->setSubject('Subject')
                    ->setFromEmail($senderEmail)
                    ->setFromName($senderName)
                    ->setType('html')
                    ->send();

任何帮助很多赞赏! 感谢

2 个答案:

答案 0 :(得分:5)

Mage_Core_Model_Email类不支持bcc(或cc)。您需要覆盖send方法,并在$mail->send();之前添加此代码。

if ($this->getBcc()) {
    $mail->addBcc($this->getBcc());
}

之后你的代码可以是:

$mail = Mage::getModel('core/email')
                ->setToName($senderName)
                ->setToEmail($customerEmail)                    
                ->setBody($processedTemplate)
                ->setSubject('Subject')
                ->setFromEmail($senderEmail)
                ->setFromName($senderName)
                ->setType('html')
                ->setBcc('test@example.com') //bcc line added
                ->send();

答案 1 :(得分:3)

尝试此选项。请注意!如果您使用AWS,Bcc选项不起作用。这是AWS药水并阅读他们的政策。希望帮助

$mail = Mage::getModel('core/email_template')
                ->setToName($senderName)
                ->setToEmail($customerEmail)
                ->addBcc('jondoe@exmaple.com')                    
                ->setBody($processedTemplate)
                ->setTemplateSubject('Subject')
                ->setFromEmail($senderEmail)
                ->setFromName($senderName)
                ->setType('html')
                ->send();

你也可以像这个片段一样使用

 $emailTemplate = Mage::getModel('core/email_template');
 $emailTemplate->loadDefault('custom_email');
 $emailTemplate->setTemplateSubject('My Subject');
 $emailTemplate->setSenderName('Store Name');
 $emailTemplate->setSenderEmail('jondoe@exmaple.com');
 $emailTemplate->addBcc('jane@doe.com'); 
 $emailTemplateVariables['price'] = $currencySymbol.number_format($_product->getFinalPrice(), 2);
 $emailTemplateVariables['productname'] = $_product->getName();
 $emailTemplate->send($email, 'My Store', $emailTemplateVariables);`