> ## Documentation Index
> Fetch the complete documentation index at: https://auth0.generaltranslation.app/llms.txt
> Use this file to discover all available pages before exploring further.

# 電子メールテンプレートでLiquid構文を使用

> 電子メールテンプレートでLiquid構文を使用する方法について説明します。

<Tooltip data-tooltip-id="react-containers-DefinitionTooltip-0" href="/docs/ja-JP/ja-jp/glossary?term=auth0-dashboard" tip="Auth0 Dashboard: サービスを構成するためのAuth0の主製品。" cta="用語集の表示">Auth0 dashboard</Tooltip>で利用可能な[電子メールテンプレート](https://manage.auth0.com/#/branding/email_templates)を使用する場合、Liquidテンプレート言語を使用して適切なデータを選択し、電子メールを書式設定するオプションがあります。Liquidは、さまざまな情報を含む電子メールを動的に生成するために使用できるHTMLの機能を拡張するオープンソースのテンプレート言語です。詳細については、Githubの[［Liquid for Designers（デザイナー向けLiquid）］](https://github.com/Shopify/liquid/wiki/Liquid-for-Designers)に関するページをお読みください。

Liquidを使用して、特定の値をハードコードするのではなく、電子メールの`［Subject（件名）］`を構成して適切なアプリケーション名を表示できます。

`{{application.name}}です!`

Liquid構文を使用したHTMLは、検証、パスワード変更確認、およびブロックされたアカウントの電子メールテンプレートのすべてのフィールド (`URLLifetime`を除く) でサポートされています。サポートされている出力属性とその使用方法の詳細については、[［Customize Email Templates（電子メールテンプレートのカスタマイズ）］](/docs/ja-JP/ja-jp/customize/email/email-templates)を参照してください。

Liquidには、出力とタグの2種類のマークアップがあります。

<div id="output-markup">
  ### 出力マークアップ
</div>

**［Output（出力）］** マークアップはテキストに変換され、2組の対応する波括弧で囲まれます。

`こんにちは {{ name }}!`

シンプルな方法であるフィルターを使用して、出力の外観をさらにカスタマイズできます。たとえば、`upcase`フィルターは、フィルターに渡されるテキストを大文字に変換します。

`こんにちは {{ name | upcase }}!`

複数のフィルターは`|`で区切られ、左から右の順に処理され、前のフィルターの結果に次のフィルターが適用されます。テンプレートは最終結果をレンダリングします

以下のフィルターがサポートされています。

<table class="table">
  <thead>
    <tr>
      <th>フィルター</th>
      <th>説明</th>
      <th>例</th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>`append`</td>
      <td>文字列を追加します</td>
      <td>`{{ 'foo' | append:'bar' }} #=&gt; 'foobar'`</td>
    </tr>

    <tr>
      <td>`capitalize`</td>
      <td>入力文の文字を大文字にします</td>
      <td>`{{ "my great title" | capitalize }} #=&gt; My great title`</td>
    </tr>

    <tr>
      <td>`date`</td>
      <td>日付を再フォーマットします (<a href="http://docs.shopify.com/themes/liquid-documentation/filters/additional-filters#date">syntax reference</a>)</td>

      <td />
    </tr>

    <tr>
      <td>`default`</td>
      <td>提供された値を返すnullまたは空の文字列でない限り、提供された変数を返します</td>
      <td>`{{ undefined_variable | default: "Default value" }} #=&gt; "Default value"`</td>
    </tr>

    <tr>
      <td>`divided_by`</td>
      <td>整数除算</td>
      <td>`{{ 10 | divided_by:3 }} #=&gt; 3`</td>
    </tr>

    <tr>
      <td>`downcase`</td>
      <td>入力文字列を小文字に変換します</td>
      <td>`{{ "Parker Moore" | downcase }} #=&gt; parker moore`</td>
    </tr>

    <tr>
      <td>`escape`</td>
      <td>文字列のHTMLエスケープ</td>
      <td>`{{ "Have you read 'James &amp; the Giant Peach'?"| escape }} #=&gt; Have you read 'James &amp; the Giant Peach'?`</td>
    </tr>

    <tr>
      <td>`escape_once`</td>
      <td>既存のエスケープされたエンティティに影響を与えることなくHTMLのエスケープされたバージョンを返します</td>
      <td>`{{ "1 &lt; 2 &amp; 3" | escape_once }} #=&gt; 1 &lt; 2 &amp; 3`</td>
    </tr>

    <tr>
      <td>`first`</td>
      <td>渡された配列の最初の要素を取得します</td>

      <td />
    </tr>

    <tr>
      <td>`join`</td>
      <td>配列の要素を、特定の文字を間に使用して結合します</td>

      <td />
    </tr>

    <tr>
      <td>`last`</td>
      <td>渡された配列の最初の要素を取得します</td>

      <td />
    </tr>

    <tr>
      <td>`map`</td>
      <td>提供されたプロパティの配列をマップ/収集します</td>

      <td />
    </tr>

    <tr>
      <td>`minus`</td>
      <td>減算</td>
      <td>`{{ 4 | minus:2 }} #=&gt; 2`</td>
    </tr>

    <tr>
      <td>`modulo`</td>
      <td>剰余</td>
      <td>`{{ 3 | modulo:2 }} #=&gt; 1`</td>
    </tr>

    <tr>
      <td>`newline_to_br`</td>
      <td>各改行(\n)をHTML改行に置き換えます</td>

      <td />
    </tr>

    <tr>
      <td>`plus`</td>
      <td>加算</td>
      <td>`{{ '1' | plus:'1' }} #=&gt; 2`, `{{ 1 | plus:1 }} #=&gt; 2`</td>
    </tr>

    <tr>
      <td>`prepend`</td>
      <td>文字列をプリペンドします</td>
      <td>`{{ 'bar' | prepend:'foo' }} #=&gt; 'foobar'`</td>
    </tr>

    <tr>
      <td>`remove`</td>
      <td>各出現を削除します</td>
      <td>`{{ 'foobarfoobar' | remove:'foo' }} #=&gt; 'barbar'`</td>
    </tr>

    <tr>
      <td>`remove_first`</td>
      <td>最初の出現を削除します</td>
      <td>`{{ 'barbar' | remove_first:'bar' }} #=&gt; 'bar'`</td>
    </tr>

    <tr>
      <td>`replace`</td>
      <td>各出現を置き換えます</td>
      <td>`{{ 'foofoo' | replace:'foo','bar' }} #=&gt; 'barbar'`</td>
    </tr>

    <tr>
      <td>`replace_first`</td>
      <td>最初の出現を置き換えます</td>
      <td>`{{ 'barbar' | replace_first:'bar','foo' }} #=&gt; 'foobar'`</td>
    </tr>

    <tr>
      <td>`round`</td>
      <td>出力を最も近い整数か、指定された小数点以下の桁数に丸めます</td>
      <td>`{{ 4.5612 | round: 2 }} #=&gt; 4.56`</td>
    </tr>

    <tr>
      <td>`size`</td>
      <td>配列または文字列のサイズを返します</td>
      <td>`{{ "Ground control to Major Tom."| size }} #=&gt; 28`</td>
    </tr>

    <tr>
      <td>`sort`</td>
      <td>配列の要素をソートします</td>

      <td />
    </tr>

    <tr>
      <td>`split`</td>
      <td>一致するパターンで文字列を分割します</td>
      <td>`{{ "a~b" | split:"~" }} #=&gt; ['a','b']`</td>
    </tr>

    <tr>
      <td>`strip_html`</td>
      <td>文字列からHTMLを削除します</td>
      <td>`{{ "How &lt;em&gt;are&lt;/em&gt; you?"| strip_html }} #=&gt; How are you?`</td>
    </tr>

    <tr>
      <td>`strip_newlines`</td>
      <td>文字列からすべての改行(\n)を削除します</td>

      <td />
    </tr>

    <tr>
      <td>`times`</td>
      <td>乗算</td>
      <td>`{{ 5 | times:4 }} #=&gt; 20`</td>
    </tr>

    <tr>
      <td>`truncate`</td>
      <td>文字列をx文字まで切り詰めますまた文字列に追加する2番目のパラメーターを受け入れます</td>
      <td>`{{ 'foobarfoobar' | truncate: 5, '.' }} #=&gt; 'foob.'`</td>
    </tr>

    <tr>
      <td>`truncatewords`</td>
      <td>文字列をx文字まで切り詰めます</td>

      <td />
    </tr>

    <tr>
      <td>`upcase`</td>
      <td>入力文字列を大文字に変換します</td>
      <td>`{{ "Parker Moore" | upcase }} #=&gt; PARKER MOORE`</td>
    </tr>
  </tbody>
</table>

<div id="tag-markup">
  ### タグマークアップ
</div>

**［Tag（タグ）］** マークアップはテキストに解決されず、対応する一対の波括弧とパーセント記号で囲まれます。

`{％これはテキスト％に解決されません}`

通常、タグはテンプレートにロジックを適用するために使用されます。Liquidで[サポートされているタグ](https://github.com/Shopify/liquid/wiki/Liquid-for-Designers#tags)を使用すると、1つのテンプレートで複数のニーズを満たすことができます。

タグを使用して`if/else`ステートメントを実行し、1つのテンプレートで複数の言語で電子メールを送信することができます。

例：

```liquid wrap lines theme={null}
{% if user.user_metadata.lang == 'en' %} [email body in English] {% elsif user.user_metadata.lang == 'de' %} [email body in German] {% endif %}
```

追加の条件を使用する必要がある場合は、caseステートメントの使用を検討してください。caseステートメントの詳細については、Githubの[［Liquid for Designers（デザイナー向けLiquid）］](https://github.com/Shopify/liquid/wiki/Liquid-for-Designers#case-statement)を参照してください。

<div id="tag-comments">
  #### タグコメント
</div>

`{% comment %}`タグと`{% endcomment %}`タグの間のコンテンツはレンダリングされません。

`これは表示されます。{% comment %}これは表示されません。{% endcomment %}`

<div id="tag-raw">
  #### タグraw
</div>

Liquidマークアップの処理を一時的に無効にするには、`{% raw %}`と`{% endraw %}`を使用します。これは、Liquidと競合する構文を使用している場合に便利です。

たとえば、次の`Mustache.js`行を次のようにエスケープできます。

```liquid wrap lines theme={null}
{% raw %} var clients = "Clients:<ul>{{#client}}<li>{{fn}} {{ln}}" + {{phone}}</li>{{/client}}</ul>"; {% endraw %}
```

<div id="debug-variables">
  ## デバッグ変数
</div>

テンプレートの開発を支援するために、カスタム`{% debug %}` liquidタグが追加されました。このタグは、テンプレートが表示されたときにテンプレートで使用できるテンプレート変数の概要を出力します。このタグは、「ライブ」のテンプレートから必ず削除してください。

<div id="learn-more">
  ## もっと詳しく
</div>

* [メールテンプレートをカスタマイズする](/docs/ja-JP/ja-jp/customize/email/email-templates)
* [メールテンプレートの説明](/docs/ja-JP/ja-jp/customize/email/email-templates/email-template-descriptions)
* [アカウントのブロック通知メールをカスタマイズする](/docs/ja-JP/ja-jp/customize/email/customize-blocked-account-emails)
