我想在新订单电子邮件通知中添加自定义变量,其值已从表sales_flat_order(即heared4us)填充。我怎么能这样做?
我使用的是magento 1.7.0.2版本
感谢。
答案 0 :(得分:1)
要添加新字段以订购电子邮件,您需要执行以下两个步骤
1)编辑位于
中的sendNewOrderEmail()函数应用程序/代码/核心/法师/销售/型号/ Order.php
在该功能中,您将找到以下代码
$mailer->setTemplateParams(array(
'order' => $this,
'billing' => $this->getBillingAddress(),
'payment_html' => $paymentBlockHtml,
));
您需要添加新的键值对才能添加新的自定义值
$mailer->setTemplateParams(array(
'order' => $this,
'billing' => $this->getBillingAddress(),
'payment_html' => $paymentBlockHtml,
'customvalue' => 'This is a custom value' //New custom value
));
2)现在是第二部分。您需要将自定义变量添加到新订单电子邮件模板。 只需编辑模板即可添加自定义参数名称。在示例中,它是“customvalue”。
{{ var customvalue }}
对于英语,订单电子邮件模板位于
因此,根据您在网站上使用的语言,选择位于区域设置文件夹中的正确模板。
您也可以通过导航到
来管理来自管理员的电子邮件模板系统>交易电子邮件>新订单电子邮件
答案 1 :(得分:0)
public function execute(\Magento\Framework\Event\Observer $observer) {
$transport = $observer->getEvent()->getTransport();
$transportObj = $observer->getData('transportObject');
/** @var \Magento\Framework\App\Action\Action $controller*/
$transport = $observer->getTransport();
$transportObj->setData('custom_content',"custom content 123");
return $transportObj;
}