web-dev-qa-db-ja.com

MailchimpやMandrillを使用してメールのタイトルから* | MC_PREVIEW_TEXT | *を削除する方法

MailChimpでタグを結合し、その後Mandrillに公開するメールテンプレートを作成しました。

ご覧のとおり、スクリプトを実行してメールを受信すると、タイトルにMC_PREVIEW_TEXTが表示されます。

image

MandrillとMailChimpの両方でこのタグを検索しましたが、どちらのテンプレートファイルにも表示されません。

これをメールから削除するにはどうすればよいですか?

11
Declan Murphy

私もこれと同じ問題を抱えていました。それは、メールを送信するときに、マージ言語としてハンドルバーを使用しているためです。

MailchimpはMailchimpマージ言語を使用してテンプレートにMC_PREVIEW_TEXT変数を配置しているため、Handlebarを使用すると表示されます。

これを修正するには、Mandrill Settings-> Sending DefaultsでMerge LanguageをHandlebarsに設定する必要があります。

ただし、これを行う場合、Mailchimpでメールを設計するときにMailchimpマージ言語を使用する必要があります。Handlebarは使用できません。

次に、MailchimpからMandrillに送信すると、すべてのマージ変数がHandlebarsに変換されます。

7
cseils

私はこれを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

このマージタグを使用して、カスタムコード化されたキャンペーンでプレビューテキストを生成します。 HTMLの開始<body>タグの直後に| MC_PREVIEW_TEXT |を挿入します。プレビューテキストがキャンペーンの本文に表示されないようにするには、非表示の<span>要素でマージタグをラップします。

<style type = "text/css"> </ script>を見つけてHTMLに追加し、このコードを "style type"値に追加します。

開始<body>タグの後に、以下を追加します。 enter image description here

7
Amr Elgarhy

私たちが使用する2つのアプローチがあります:

  1. Via Mandrill REST API:POSTされたリクエスト本文でAPIキーを使用して、 / templates /info.json エンドポイント、問題のあるマークアップを置き換え、変更されたオブジェクトを / templates/update.json に転送します
  2. Via GUI:Mandrill GUIを公開 Mailchimpのエディタよりも多くのコードをタッチできるテンプレートを変更します。そこで削除するだけです。

最後に確認したのは、MC_PREVIEW_TEXTタグは、MailchimpテンプレートをMandrillに送信するたびに再表示されます。自分に最適なものを選び、将来的にハンドルバーテンプレートを変更するためにマンドリルに固執します。

4
Sage Gerard

htmlファイルを開いてctrl+f、次に|MC_PREVIEW_TEXT|を使用して、代わりにテキストを検索および置換します

1
trs admin

Mandrillにテンプレートを送信するためのMailchimpテンプレートエディターでも同じ問題がありました。また、Mailchimpテンプレートエディタによってhttps://がhandlebarsタグに追加され、ペイロードのURLからhttps://を削除することを強制する問題がありました。そこでMC_PREVIEW_TEXTとURLの問題を修正するために、Firefox拡張機能を作成しました。

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

必要なことは、拡張機能がテンプレート(情報と更新のアクセス許可)を取得および更新できるようにする「特別な」マンドリルAPIキーを作成することだけです。

1
Marko

同じ問題があったため、RORアプリ用の単純なレーキタスクを作成し、| 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

最後に、Railsアプリのルートフォルダーでこのコマンドを実行します。

bundle exec rake mandrill:remove_mc_preview_text

他のプログラミング言語を使用する場合、myを例として使用して同様のスクリプトを記述できます。異なるプログラミング言語については、 Mandrill API Clients を参照してください。

1
max_spy

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コードをメールの本文に挿入します。
これで問題を解決する必要があります....

0
Kajal Solanki

プレビューテキストは、入力時に表示されるプリヘッダーテキストです。経験から、テストにマージタグが表示されるのを見てきました。できることは2つあります。

  1. プレビューテキスト用のデータファイルにテキストを追加します。
  2. MailChimpのテンプレートに追加できます。

Preヘッダーの変更方法: changing pre header

乾杯

0
Syfer

これは、何人かがそれを行う方法を疑問に思うかもしれません。

MailChimpからIntercomにHTMLテンプレートをエクスポートするときに問題が発生しました。

行番号は異なる場合があるため、HTMLコードをメモ帳/テキスト編集にコピーして検索| MC_PREVIEW_TEXT |

説明付きビデオ

0
kyarra