我在下面创建但不知道如何在此代码中添加自定义主题
$transport = $this->transportBuilder->setTemplateIdentifier($emailTemplateId)
->setTemplateOptions(['area' => \Magento\Framework\App\Area::AREA_FRONTEND, 'store' => $storeId])
->setTemplateVars($templateParams)
->setFrom(['name' => $senderEmailName, 'email' => $senderEmail])
->addTo($email)
->getTransport();
$transport->sendMessage();
对于Magento 1,我们使用添加行: -
->setTemplateSubject($mailSubject)
答案 0 :(得分:1)
由于已经回答,您可以通过
在模板中进行设置<!--@subject [...] @-->
您可以通过访问以下模板变量,在模板中读出来:
{{var this.getSubject()}}
例如,如果您使用trans
指令创建主题,则会返回已翻译的主题。
当 TransportBuilder 准备邮件(\Magento\Framework\Mail\Template\TransportBuilder::prepareMessage
)时,可以透明地设置邮件的主题。
从技术上讲,只要您使用电子邮件模板(建议使用email_templates.xml
文件以供参考),这就是主题的处理方式。
在您的代码中,这已经发生在
的调用中->getTransport();
如果主题为空,请先在模板中进行设置。
参考文献:
答案 1 :(得分:0)
您可以在电子邮件模板标题中设置主题
<!--@subject This is subject @-->