Liquid リファレンス
Liquid は Shopify が作成したオープンソースのテンプレート言語で、Braze ではダイナミックなパーソナライゼーションを実現するために使用されています。全員に同じ静的メッセージを送信する代わりに、Liquid を使えば各受信者のプロファイルデータ、動作、言語に基づいてコンテンツが変化するテンプレートを作成できます。
セクション記事
Liquid について
Liquid は、メッセージとユーザーデータの橋渡しをします。メッセージを送信すると、Braze はテキスト内の Liquid 構文をスキャンします。Liquid を検出すると、その特定のユーザーに関連するデータを取得し、メッセージが送信される前にコードを実際の値に置き換えます。
たとえば、整数データタイプのカスタム属性をユーザープロファイルから取得し、その値を最も近い整数に丸めることができます。Liquid の構文と使い方の詳細については、サポートされているパーソナライゼーションタグを参照してください。
Liquid テンプレート言語は、オブジェクト、タグ、フィルターの使用をサポートしています。
- オブジェクトを使用すると、パーソナライズされた属性をメッセージに挿入できます。
- タグを使用すると、メッセージングにデータを挿入し、条件付きロジックを使用して特定の条件が満たされた場合にメッセージを送信できます。たとえば、タグを使用してキャンペーンに「if」文などのインテリジェントロジックを含めることができます。
- フィルターを使用すると、パーソナライズされた属性やダイナミックなコンテンツの書式を変更できます。たとえば、
dateフィルターを使用して、2016-09-07 08:43:50 UTC のようなタイムスタンプを September 7, 2016 のような日付に変換できます。
Braze は現在、Shopify の Liquid を 100% サポートしているわけではなく、ドキュメントで説明を試みている特定の部分のみをサポートしています。エラーやサポートされていない Liquid の使用リスクを軽減するために、送信前に Liquid を使用したすべてのメッセージをテストすることを強くお勧めします。
Liquid 5 のサポート
Braze は Shopify の Liquid 5 までをサポートしています。Liquid の実装は、構文パーソナライゼーションタグタイプとホワイトスペース制御をサポートしています。特定のタグの詳細については、構文タグを参照してください。
メッセージングを構築する際に、以下の新しい配列フィルターと数学フィルターを Liquid で使用できます。
at_leastat_mostcompactconcatsort_naturalwhere
定義についてはフィルターを参照してください。
知っておくべき用語
これらの用語は、Braze のサポートレベルに基づいて Shopify のドキュメントから再解釈されたものです。
| 用語 | 定義 | 例 |
|---|---|---|
| Liquid | Shopify が作成し、Ruby で記述された、広く使用されている顧客向けテンプレート言語で、ダイナミックなコンテンツの読み込みと取得に使用されます。 | {{${first_name}}} はメッセージにユーザーの名を挿入します。 |
| オブジェクト | 変数と目的の変数名の位置を示すもので、メッセージ内のどこにコンテンツを表示するかを Liquid に伝えます。 | {{${city}}} はメッセージにユーザーの市区町村を挿入します。 |
| 条件付きロジックタグ | ロジックを作成し、メッセージコンテンツのフローを制御するために使用されます。Braze では、条件付きロジックタグは特定の事前定義された基準に基づいてメッセージに例外やバリエーションを作成するために使用されます。 | {% if ${language} == 'en' %} は、ユーザーが言語として「English」を指定している場合に、指定された方法でメッセージをトリガーします。 |
| フィルター | Liquid オブジェクトの出力を変更、絞り込み、または書式変更するために使用されます。数学的な演算を作成するためによく使用されます。 | {{"Big Sale" | upcase}} は、「Big Sale」という文字をメッセージ内で「BIG SALE」として表示します。 |
| Operator | メッセージ内で使用され、ユーザーが受け取るメッセージに影響する依存関係や基準を作成します。 | {% custom_attribute.${Total_Revenue} > 0%} タグが付いたメッセージで定義された基準をユーザーが満たしている場合、そのメッセージを受け取ります。満たしていない場合は、設定内容に応じて別の指定されたメッセージを受け取る(または受け取らない)ことになります。 |