Mandrill 不替换 html 模板中的合并标签内容
Posted
技术标签:
【中文标题】Mandrill 不替换 html 模板中的合并标签内容【英文标题】:Mandrill is not replace merge tag content in html template 【发布时间】:2016-05-19 11:31:19 【问题描述】: Mandrill API 日志—— "subject": "情人节特别优惠。特定类别额外 10% 折扣*!查看独家在线优惠", "from_email": "habits@zip.in", "from_name": "zipp", “到”: [ “电子邮件”:“xyza_123@gmail.com”, “名称”:“文克”, “类型”:“到” ], “合并”:是的, “合并变量”:[ "rcpt": "xyza_123@gmail.com", “变量”:[ “名称”:“取消订阅”, “内容”:“http://zyr.com/unsubscribe/GYT786HHG” , "名称": "名字", “内容”:“文克” ] ], “异步”:假, “ip_pool”:空, “send_at”:空,当我点击模板中的退订链接时,它会将我带到 URL http://*|unsub|*
。 Mandrill 不会用http://zyr.com/unsubscribe/GYT&786HHG
替换|UNSUB|。请帮我 。我花了很多时间,但无法解决它
<table align="left" border="0" cellpadding="0" cellspacing="0" style="min-width:100%;" class="mcnTextContentContainer">
<tbody><tr>
<td valign="top" class="mcnTextContent" style="padding-top:9px; padding-right: 18px; padding-bottom: 9px; padding-left: 18px;">
You can <a href="*|UNSUB|*" target="_blank">unsubscribe</a><br>
<br>
</td>
</tr>
</tbody></table>
</td>
</tr>
</tbody>
</table>
【问题讨论】:
【参考方案1】:无需将 UNSUB 作为合并变量传入。 Mandrill takes care of all of that for you。 UNSUB 也是一个保留的合并标签,这就是为什么它不会被您在 API 调用中传递的值替换的原因。
因此,在您的 API 调用中,完全删除合并变量:
"name": "UNSUB",
"content": "http://zyr.com/unsubscribe/GYT786HHG"
,
在您的 html 模板中,改用这个:
You can <a href="*|UNSUB:http://zyr.com/unsubscribe/GYT786HHG|*" target="_blank">unsubscribe</a><br>
【讨论】:
嗨@terrorbox。对于每个用户,我都会生成一个唯一的取消订阅 url 并将其附加到合并变量中。我不能在 html 模板中使用它。这是一个动态网址.. @user3442132 在这种情况下,您将无法使用 Mandrill UNSUB 合并标签,因为它是保留的(Mandrill 取消订阅合并标签还为跟踪目的创建了每个收件人的链接,因此它也是动态的)。相反,您可以使用“|MYUNSUB|”之类的合并标记。 我尝试过包含 |MYUNSUB|,但没有成功。当我点击链接时,它会将我带到 bowser 上的 http://*|myunsub|*/ .. 但是当我将它包含在 html |MYUNSUB| 上时,mandrill 是用动态 url 替换它.. 但不在锚标签 href 链接上以上是关于Mandrill 不替换 html 模板中的合并标签内容的主要内容,如果未能解决你的问题,请参考以下文章
Mandrill Handlebar 模板无法正确渲染/与 Parse.com 对象合并
如何让 Mandrill 解析模板中的 Handlebars 标签?