Как добавить тему в пользовательский шаблон электронной почты?
Я создал пользовательский шаблон электронной почты в magento2. Функция почты работает нормально, но тема не отправляется в этом письме. Как я могу добавить тему в свой пользовательский шаблон электронной почты.
$transport = $this->transportBuilder
->setTemplateIdentifier('my_custom_email_template')
->setTemplateOptions(
[
'area' => \Magento\Framework\App\Area::AREA_FRONTEND,
'store' => \Magento\Store\Model\Store::DEFAULT_STORE_ID,
]
)
->setTemplateVars($vars)
->setFrom($sender)
->addTo($toEmail)
->getTransport();
$transport->sendMessage();
$this->inlineTranslation->resume();
5
3 answers
Вы можете написать тему письма в своем файле email.html
<!--@subject {{trans "Your Subject Write Here "}} @-->
Вы можете передать динамику темы, следуя приведенному ниже примеру
<!--@subject {{trans "Welcome to %store_name" store_name=$store.getFrontendName()}} @-->
14
Author: Suresh Chikani, 2017-06-28 09:53:38
Пожалуйста, убедитесь, что вы добавили нижеприведенную строку в свой файл шаблона электронной почты.
<!--@subject Subject Of your email @-->
Дополнительная ссылка по ссылке
1
Author: Jjo, 2017-06-28 09:17:20
Используйте метод clearSubject(), но чтобы применить его при вызове метода GetMessage(), приведите этот пример здесь
$transport = $this->transportBuilder->setTemplateIdentifier('send_email_email_template')
->setTemplateOptions( [
'area' => \Magento\Framework\App\Area::AREA_FRONTEND,
'store' => \Magento\Store\Model\Store::DEFAULT_STORE_ID,
])
->setTemplateVars(array())
->setFrom($sender)
->addTo($toEmail, '')
->getTransport();
$transport->getMessage()->setMessageType( \Magento\Framework\Mail\MessageInterface::TYPE_HTML)->setBody($MyHtml)->clearSubject()->setSubject("MySubject");
$transport->sendMessage();
0
Author: Daniel Alejandro Grimaldo Chav, 2020-09-11 11:58:30