shopware 6 中的电子邮件模板变量
Posted
技术标签:
【中文标题】shopware 6 中的电子邮件模板变量【英文标题】:Email template variables in shopware 6 【发布时间】:2020-12-07 17:30:14 【问题描述】:如何在 shopware 6 中转储可用于我的电子邮件模板的变量,如果无法转储它们,我在哪里可以找到它们。 谢谢
【问题讨论】:
请分享一些你迄今为止尝试过的代码。 【参考方案1】:我知道已经晚了,但是如果其他人偶然发现了这一点,您可以使用MailBeforeValidateEvent
,如下所示:
public static function getSubscribedEvents()
return [
MailBeforeValidateEvent::class => 'mailValidate'
];
public function mailValidate(MailBeforeValidateEvent $event): void
// Here you get the template data
$templateData = $event->getTemplateData();
// Here you get the data
$data = $event->getData();
【讨论】:
【参考方案2】:使用 MediaService 并从那里转储它。所有数据都将显示在 Symfony 控制台的 Debug 下(如果您使用 Git 的开发环境)
【讨论】:
【参考方案3】:没有办法将这些变量转储到 twig 中。您可以查看实体定义,例如订单:https://github.com/shopware/platform/blob/c5b78af033b1438e497e28ec7b10ab25cedb8a0d/src/Core/Checkout/Order/OrderDefinition.php
然后你可以检查链接的实体等等。
您可以在邮件服务的发送函数中适当地转储变量:https://github.com/shopware/platform/blob/cb9229240c111c70594bbe7e1a8b4f018162dc44/src/Core/Content/MailTemplate/Service/MailService.php#L109
【讨论】:
以上是关于shopware 6 中的电子邮件模板变量的主要内容,如果未能解决你的问题,请参考以下文章