在 Mandrill 车把合并变量中使用 HTML
Posted
技术标签:
【中文标题】在 Mandrill 车把合并变量中使用 HTML【英文标题】:Using HTML in Mandrill handlebar merge variables 【发布时间】:2015-07-20 10:56:36 【问题描述】:如果我的模板中有一个把手合并变量,如 message
,如果在 php 中给出以下内容,我如何让它呈现 html 输出:
array(
'name' => 'message',
'content' => '<p>First paragraph.</p><p>Second paragraph.</p>'
)
现在它在不解析段落标签的情况下输出内容。
【问题讨论】:
【参考方案1】:如果您使用 Handlebars,我认为正确的做法是使用三重大括号,例如:
html_content
我不确定是否可以在 Mandrill 中将 mc:edit 与 Handlebars 混合使用:
不支持在单个消息中将 Handlebars 与 mc:edit 区域或合并标签结合使用。您应该选择 Handlebars 或 mc:edit region plus merge tags。
https://mandrill.zendesk.com/hc/en-us/articles/205582537-Using-Handlebars-for-dynamic-content
【讨论】:
【参考方案2】:实际上当使用 mandrill 发送消息变量时有一个字段 merge_language 并且当你更改为这个时
'merge_language' => 'handlebars'
它有效。对于您的情况,我认为该值是默认的“mailchimp”,因此需要使用 mc:edit
【讨论】:
这是真正的问题。谢谢你。 应该这样做! 这只是修复了我的 1 小时搜索以使车把工作,如果可以的话,我会给你 1000+。merge_language: 'handlebars'
为我在节点中【参考方案3】:
为了回答我自己的问题,我只是将mc:edit="message"
添加到包含消息的 div 中,如下所示:
<div mc:edit="message"></div>
然后我将它添加到我的结构中:
$template_content = array(
array(
'name' => 'message',
'content' => '<p>First paragraph.</p><p>Second paragraph.</p>'
),
);
【讨论】:
以上是关于在 Mandrill 车把合并变量中使用 HTML的主要内容,如果未能解决你的问题,请参考以下文章
尝试从 Mandrill 发送电子邮件时出现 html 或车把编码问题