【发布时间】:2013-02-01 07:34:39
【问题描述】:
我创建了一个新的电子邮件模板,它在 Magento 中运行良好,但我不知道如何将密件抄送地址添加到电子邮件中。
【问题讨论】:
标签: magento
我创建了一个新的电子邮件模板,它在 Magento 中运行良好,但我不知道如何将密件抄送地址添加到电子邮件中。
【问题讨论】:
标签: magento
您可以在发送电子邮件的代码中添加密件抄送:
Mage::getModel('core/email_template')
->addBcc('em@ail.com')
->sendTransactional(...
【讨论】:
这是我找到的答案:
$mailTemplate->setTemplateSubject($mailSubject)->addBcc('youremail@mail.com')
->sendTransactional($templateId, $sender, $email, $cus_name, $data, $storeId);
【讨论】:
您可以在配置中执行此操作。转到销售 > 销售电子邮件。 Foreach transactional E-Mail 可以输入Send Order Email Copy To 并通过Send Order Email Copy Method 将 Method 设置为 BCC。
【讨论】:
可以接受单个电子邮件或数组电子邮件,请检查:
app\code\core\Mage\Core\Model\Email\Template.php
Mage_Core_Model_Email_Template
public function addBcc($bcc)
{
if (is_array($bcc)) {
foreach ($bcc as $email) {
$this->getMail()->addBcc($email);
}
}
elseif ($bcc) {
$this->getMail()->addBcc($bcc);
}
return $this;
}
【讨论】:
创建di.xml:app/code/Py/Custom/etc/di.xml
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
<type name="\Magento\Framework\Mail\Template\TransportBuilder">
<plugin name="TransportBuilderPlugin" type="Py\Custom\Plugin\Mail\Template\TransportBuilder" sortOrder="1" />
</type>
</config>
创建插件:app/code/Py/Custom/Plugin/Mail/Template/TransportBuilder.php
<?php
namespace Py\Custom\Plugin\Mail\Template;
class TransportBuilder
{
public function afterGetTransport(\Magento\Framework\Mail\Template\TransportBuilder $subject, $result)
{
$result->getMessage()->addCc('test@gmail.com');
return $result;
}
}
【讨论】: