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">&nbsp;</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 模板中,我使用以下格式指定合并标签(命名为 nameproduct):

<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】:

您看到的行为表明您将 &lt;span&gt; 嵌套在另一个可编辑区域内。没有看到完整的代码很难说。但是,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 将被删除。但是,您应该会看到 &lt;div&gt; 元素上的 mc:edit 声明已按预期保留。

如果要对文本进行内联替换,最好使用merge tags。

【讨论】:

在 Mandrill 似乎并非所有人都同意您的回答:twitter.com/mandrillapp/status/617014296820580352 我建议您自己测试以确认。 好吧,我可以确认在我的例子中 mc:edit 部分没有嵌套在任何其他部分中(它实际上是模板中唯一的部分)并且它没有被导出到 Mandrill。 您能否提供您在 mc 模板中使用的完整 HTML(如果需要,请编辑私人信息)?我已经对此进行了测试,除了我上面发布的示例之外,无法复制被剥离的区域。

以上是关于mailchimp 模板导出到带有合并标签的山魈问题的主要内容,如果未能解决你的问题,请参考以下文章

如何获取 Mandrill/Mailchimp 模板以在合并标签中保留换行符

山魈合并标签不接受变量值

超链接合并标签

在 Mailchimp API 3.0 中添加自定义合并标签

发送模板山魈 javascript

创建活动时 Mailchimp 自定义模板空白