如何使用Mailchimp和/或Mandrill从电子邮件标题中删除* | MC_PREVIEW_TEXT | *

时间:2017-07-24 04:35:16

标签: email mailchimp mandrill

我创建了一个电子邮件模板,其中包括在MailChimp上合并标签,然后发布到Mandrill。

当我的脚本运行并且我收到电子邮件时,如您所见, | MC_PREVIEW_TEXT | 出现在标题中。

image

我在Mandrill和MailChimp上搜索了这个标签,但它没有出现在任何一个模板文件中。

如何从电子邮件中删除此内容?

9 个答案:

答案 0 :(得分:7)

我遇到了同样的问题,因为我在发送电子邮件时使用了Handlebars作为合并语言。

Mailchimp使用Mailchimp合并语言将MC_PREVIEW_TEXT变量放入模板中,因此如果您使用Handlebars,它会显示出来。

要解决此问题,您必须在Mandrill设置中将合并语言设置为句柄 - >发送默认值。

但是当你这样做时,你必须在Mailchimp中设计电子邮件时使用Mailchimp合并语言,你不能使用Handlebars。

然后当您从Mailchimp发送到Mandrill时,它会将所有合并变量转换为Handlebars。

答案 1 :(得分:7)

我曾经通过Mandrill模板编辑器这样做。 enter image description here

只需删除身体开口后出现的这些线条:

    <!--*|IF:MC_PREVIEW_TEXT|*-->
            <!--[if !gte mso 9]><!----><span class="mcnPreviewText"  
 style="display:none; font-size:0px; line-height:0px; max-height:0px; max-width:0px; opacity:0; overflow:hidden; visibility:hidden; mso-hide:all;">*|MC_PREVIEW_TEXT|*</span>
           <!--<![endif]-->
           <!--*|END:IF|*-->

要了解有关此合并标记的更多信息:
https://kb.mailchimp.com/merge-tags/all-the-merge-tags-cheat-sheet

  

使用此合并标记以自定义编码生成预览文本   运动。在开幕之后插入 | MC_PREVIEW_TEXT | &lt;身体&gt;   HTML中的标记。确保预览文本在正文中不可见   在您的广告系列中,将合并标记包装在隐藏的&lt; span&gt;元件。

     

找到或添加&lt; style type =&#34; text / css&#34; &GT; &LT; / script&gt;到您的HTML,   并将此代码添加到&#34;样式类型&#34;值:

     

开幕后&lt;身体&gt;标签,添加:   enter image description here

答案 2 :(得分:4)

There's two approaches we use:

  1. Via Mandrill REST API: Using your API key in your POSTed request body, hit the /templates/info.json endpoint, replace the offending markup, then forward the modified object to /templates/update.json
  2. Via GUI: Mandrill exposes a GUI to modify templates that lets you touch more code than Mailchimp's editor. Just delete it there.

Last I checked, the ConstraintLayout tag will reappear each time you send your Mailchimp templates to Mandrill. Pick what's best for you and stick to Mandrill for modifying Handlebars templates in the future.

答案 3 :(得分:1)

我们遇到了与Mailchimp模板编辑器相同的问题,用于向Mandrill发送模板。此外,Mailchimp模板编辑器将https://附加到车把标签上,这迫使我们从有效负载中的网址中删除https://。因此,要修复MC_PREVIEW_TEXT并使用网址问题,我创建了一个Firefox扩展程序。

https://addons.mozilla.org/en-US/firefox/addon/mandrillchimp/

您唯一需要做的就是创建“特殊”Mandrill API密钥,它允许扩展来获取和更新模板(信息和更新权限)。

答案 4 :(得分:1)

打开html文件,然后打开ctrl+f,然后使用|MC_PREVIEW_TEXT|搜索并替换您的文本

答案 5 :(得分:1)

我们遇到了同样的问题,因此我为ROR应用编写了简单的rake任务,该任务删除了| MC_PREVIEW_TEXT |从Mandrill模板中自动删除。这是我耙任务的一个示例:

require 'mandrill'
namespace :mandrill do
  desc 'Removes *|MC_PREVIEW_TEXT|* section for all email templates in mandrill app'
  task remove_mc_preview_text: :environment do

    # Templates with handlebars merge language
    templates = [
      'template-example-1',
      'template-example-2',
    ]

    mandrill = Mandrill::API.new 'YOUR_API_KEY'

    templates.each do |name|
      begin
        puts "Processing the template: #{name}"

        # Get the information for an existing template
        result = mandrill.templates.info name

        # Finds the section with MC_PREVIEW_TEXT inside a template and substitutes it to the empty string
        code = result['code'].sub(/\<\!\-\-\*\|IF:MC_PREVIEW_TEXT[[:ascii:]]+END:IF\|\*\-\-\>/m, '')

        # If nil is provided for any fields, the values will remain unchanged.
        from_email = nil
        from_name = nil
        subject = nil
        text = nil
        labels = nil

        # Set to false to update the draft version of the template without publishing
        publish = true

        # Update the code for an existing template
        mandrill.templates.update name, from_email, from_name, subject, code, text, publish, labels

        puts "Successfully deleted *|MC_PREVIEW_TEXT|* section from the template: #{name}"
      rescue Mandrill::Error => e
        # Mandrill errors are thrown as exceptions
        puts "A mandrill error occurred: #{e.class} - #{e.message}"
      end
    end
    puts 'Done!'
  end
end

只有几步可以使它起作用:

  1. 将Mandrill API客户端安装为gemgem install mandrill-api或添加到您的Gemfile中:gem 'mandrill-api'
  2. 使用lib / tasks /文件夹中上面列出的代码创建任何rake任务(例如remove_mc_preview_text.rake)
  3. 将“ YOUR_API_KEY”更改为真实的Mandrill API密钥
  4. templates数组中的模板名称更改为真实的模板,如果由于某种原因您不知道它们,可以在https://mandrillapp.com/templates
  5. 处找到它们。

最后在rails应用的根文件夹中运行以下命令:

bundle exec rake mandrill:remove_mc_preview_text

如果您使用任何其他编程语言,您都可以以my为例编写类似的脚本,请参见Mandrill API Clients了解不同的编程语言。

答案 6 :(得分:0)

预览文本是预表头文本,将在填充时显示。根据经验,我看到合并标签出现在测试中。你可以做两件事:

  1. 在数据文件中为预览文本添加文本基本上它对每个人都是相同的或
  2. 您可以将其添加到MailChimp中的模板。
  3. 如何更改前标题: changing pre header

    干杯

答案 7 :(得分:0)

这可能有助于你们中的一些人想知道如何去做。

将MailChimp中的HTML模板导出到内部通信时遇到了问题。

行号可能不同,因此请将HTML代码复制到记事本/文本编辑中并搜索 | MC_PREVIEW_TEXT | 以找到它

Video with instructions

答案 8 :(得分:0)

从您的html代码中删除以下行:

 <span class="m_-63420320203924518mcnPreviewText" style="display:none;font-size:0px;line-height:0px;max-height:0px;max-width:0px;opacity:0;overflow:hidden">*|MC_PREVIEW_TEXT|*</span>

在此之后,将html代码插入邮件正文中。
现在您的问题应该解决了....