mailchimp 模板导出到带有合并标签的山魈问题
Posted
技术标签:
【中文标题】mailchimp 模板导出到带有合并标签的山魈问题【英文标题】:mailchimp template export to mandrill issue with merge tags 【发布时间】:2015-03-24 14:11:19 【问题描述】:我已经在 Mailchimp 中制作了模板,并希望将它们导出到 Mandrill,这样当新用户在我们的网站上注册时,它可以自动完成,作为欢迎电子邮件和入门电子邮件。
在 Mailchimp 模板中,我在 html 中添加了 mc:edit="name"
,因为我的 mandril JSON 会查找要个性化的名称标签。代码如下
<p>Hi <span mc:edit="name"> </span></p>
当我发送到 Mandrill 并查看源代码时,它会忽略 mc:edit 标签并在下面显示
<p>Hi <span></span></p>
但是,当我手动更改 mandrill 模板以包含 mc:edit 时,个性化工作正常。
我需要在 Mandrill(或 Mailchimp)中添加一些设置才能使其正常工作吗?一直修改 mandrill 模板真的很麻烦,因为当我们对 mailchimp 模板进行更改时,mc:edit 一导出就会被覆盖。
【问题讨论】:
如果有帮助,我自己也遇到过这个问题,但从来没有找到好的工作流程。可以在 Mandrill 上尝试模板/自动化服务,例如 sendwithus.com 或 customer.io。 【参考方案1】:在我的 MailChimp 模板中,我使用以下格式指定合并标签(命名为 name 和 product):
<p>Hi *|name|*!</p>
<p>Thanks for downloading *|product|*.</p>
您必须授权 MailChimp 才能访问您的 Mandrill 帐户。假设您已经这样做了,您应该将 MailChimp 模板发送到 Mandrill。您可以从模板页面执行此操作:单击编辑按钮上的向下箭头并选择“发送到 Mandrill”。您现在应该在 Outbound -> Templates 页面上的 Mandrill 帐户中看到您的模板。
假设您想使用模板通过 Mandrill 发送新的交易消息,那么您将以下 JSON 发布到 https://mandrillapp.com/api/1.0/messages/send-template.json:
"key": "***apikey***",
"template_name": "name-of-your-template",
"template_content": [],
"message":
"subject": "Thanks for downloading",
"from_email": "hello@yourcompany.com",
"from_name": "yourcompany",
"to": [
"email": "john@theircompany.com",
"name": "John",
"type": "to"
],
"merge": true,
"merge_language": "mailchimp",
"global_merge_vars": [
"name": "name",
"content": "John"
,
"name": "product",
"content": "Awesome 1.0"
]
【讨论】:
谢谢弗兰克..抱歉它不起作用..我想我现在只是尝试使用解决方法,即在 mandrill 中手动编辑 html 模板 它是从工作生产代码中复制而来的(名称等除外)。什么不起作用? 顺便问一下,您是否将 MailChimp 模板发送到 Mandrill?您必须明确执行此操作,然后才能根据此模板发送邮件。请参阅我的更新答案。 是的,我将它发送到 mandrill 并检查了 mandrill 模板,它采用了Hi |name|!
段代码。但是,当我通过注册发送测试电子邮件时,它显示 Hi |name|! @ChouOne 应该是*|name|*
而不是|name|
【参考方案2】:
所以官方的答案是否定的。您无法将mc:edit
区域保留在导出的模板中:https://twitter.com/mandrillapp/status/617014296820580352。
【讨论】:
【参考方案3】:您看到的行为表明您将 <span>
嵌套在另一个可编辑区域内。没有看到完整的代码很难说。但是,mc:edit
区域 在您发送到 Mandrill 时会被保留——这有点像能够使用 MailChimp 模板编辑器并发送到 Mandrill,尽管它是有限的到某些类型的可编辑区域。
假设 span 没有嵌套在另一个声明了 mc:edit
的元素中,您应该可以使用。
但是,看看这个例子:
<div mc:edit="body_text">
This is my sample body text with an
<span mc:edit="editable_span">editable span</span>
</div>
跨度上的mc:edit
将不会发送到 Mandrill,因为 MailChimp 模板语言中不允许嵌套的 mc:edit
区域;当 MailChimp 导出模板时,有问题的 mc:edit
将被删除。但是,您应该会看到 <div>
元素上的 mc:edit
声明已按预期保留。
如果要对文本进行内联替换,最好使用merge tags。
【讨论】:
在 Mandrill 似乎并非所有人都同意您的回答:twitter.com/mandrillapp/status/617014296820580352 我建议您自己测试以确认。 好吧,我可以确认在我的例子中 mc:edit 部分没有嵌套在任何其他部分中(它实际上是模板中唯一的部分)并且它没有被导出到 Mandrill。 您能否提供您在 mc 模板中使用的完整 HTML(如果需要,请编辑私人信息)?我已经对此进行了测试,除了我上面发布的示例之外,无法复制被剥离的区域。以上是关于mailchimp 模板导出到带有合并标签的山魈问题的主要内容,如果未能解决你的问题,请参考以下文章
如何获取 Mandrill/Mailchimp 模板以在合并标签中保留换行符