2020/07/04

MJMLを使ってHTMLメールをマークアップする

javascripthtmlemail

概要

MJMLは色々な種類のメーラーに対応したHTMLメールのマークアップ(デザイン)フレームワークです。
サーバーからHTMLメールを送信することがよくありますが、その時によく使います。

サポートされているコンポーネントを使って、簡単にHTMLをマークアップすることができます。

HTMLメールはブラウザで対応しているCSSやタグが使えなかったりすることが多々あるので、大変重宝します。当然レスポンシブ対応しています。

実施事項

mjmlのインストール

% npm install -g mjml

マークアップ

  • 以下のような内容で保存します。
  • email-name.mjml のようなファイル名で保存しておきます。
<mjml>
  <mj-body background-color="#fff">
    <mj-section>
      <mj-column>
        <mj-divider border-color="#555"></mj-divider>
        <mj-text font-size="20px" color="#555" font-family="helvetica">リセットパスワード</mj-text>
        <mj-divider border-color="#555" border-width="2px" />
      </mj-column>
    </mj-section>
  </mj-body>
</mjml>

htmlへ変換

  • mjml コマンドを使って、mjmlファイルからhtmlファイルへ変換できます
  • config.minify および config.beautify を指定して、minifyされたhtmlファイルを出力します
mjml ./email-name.mjml \
  --config.beautify false \
  --config.minify true \
  -o ./email-name.html

以上になります。