カタログの使用
カタログを作成した後、Liquid を使用して、Braze キャンペーンの非ユーザーデータを参照できます。Liquid がサポートされているドラッグ&ドロップエディター内の任意の場所を含む、すべてのメッセージングチャネルでカタログを使用できます。
メッセージでカタログを使う
ステップ 1: パーソナライゼーションタイプを追加する
任意のメッセージ作成画面で、プラスアイコンを選択して「パーソナライゼーションを追加」モーダルを開き、パーソナライゼーションの種類として「カタログアイテム」を選択します。次に、カタログ名を選択します。先ほどの例を使って、「Games」カタログを選択します。

以下の Liquid プレビューがすぐに表示されます。
1
{% catalog_items Games %}
ステップ 2: カタログアイテムを選択する
次に、カタログアイテムを追加します。ドロップダウンを使って、カタログアイテムと表示する情報を選択します。この情報は、カタログを生成するために使用された、アップロード済みの CSV ファイルの列に対応しています。
例えば、Tales ゲームのタイトルと価格を参照するには、カタログアイテムとして Tales (1234) の id を選択し、表示する情報として title と price をリクエストします。
1
2
3
{% catalog_items Games 1234 %}
Get {{ items[0].title }} for just {{ items[0].price }}!
これは次のように表示されます。
「Tales」をわずか 7.49 ドルでゲットしよう!
カタログのエクスポート
ダッシュボードからカタログをエクスポートするには、次の 2 つの方法があります。
- カタログセクションのカタログ行にカーソルを合わせます。次に、「カタログをエクスポート」ボタンを選択します。
- カタログを選択します。次に、カタログのプレビュータブで「カタログをエクスポート」ボタンを選択します。
エクスポートを開始すると、CSV ファイルをダウンロードするためのメールが届きます。このファイルの取得期限は最大 4 時間です。
その他のユースケース
複数のアイテム
メッセージで使用できるアイテムは 1 つだけではありません。「パーソナライゼーションを追加」モーダルを使って、一度に最大 3 つのカタログアイテムを追加できます。さらに追加するには、作成画面で再度「パーソナライゼーションを追加」を選択し、追加のカタログアイテムや表示する情報を選びます。
この例では、Tales、Teslagrad、Acaratus の 3 つのゲームの id をカタログアイテムに追加し、表示する情報として title を選択します。

Liquid の周りにテキストを追加することで、メッセージをさらにパーソナライズできます。
1
2
Get the ultimate trio {% catalog_items Games 1234 1235 1236 %}
{{ items[0].title }}, {{ items[1].title }}, and {{ items[2].title }} today!
これは以下のように返されます。
Get the ultimate trio Tales, Teslagrad, and Acaratus today!
Check out selections to create groups of data for more personalized messaging!
Using Liquid if statements
You can use catalog items to create conditional statements. For example, you can trigger a certain message to display when a specific item is selected in your campaign. You must declare the catalog (and, if applicable, the selection) before referencing items in an if statement.
With catalog items
1
2
3
4
5
6
{% catalog_items Games 1234 %}
{% if items[0].on_sale == true %}
{{ items[0].title }} is on sale! Get it for {{ items[0].price }}.
{% else %}
Check out {{ items[0].title }} at full price.
{% endif %}
この例では、catalog_items タグが Games カタログからアイテム 1234 を取得し、if ステートメントが on_sale フィールドをチェックして異なるメッセージを表示します。
カタログセレクションの場合
1
2
3
4
5
6
7
8
{% catalog_selection_items item-list selections %}
{% if items[0].venue_name.size > 10 %}
Message if the venue name's size is more than 10 characters.
{% elsif items[0].venue_name.size <= 10 %}
Message if the venue name's size is 10 characters or fewer.
{% else %}
{% abort_message('no venue_name') %}
{% endif %}
この例では、venue_name フィールドの文字数が 10 文字より多いか少ないかによって、異なるメッセージが表示されます。venue_name が空白の場合、メッセージは中止されます。
Liquid の構文エラーを避けるには、メッセージ作成画面の + プラスボタンを選択して、カタログの Liquid タグを自動的に挿入してください。
画像の使用
カタログ内の画像を参照してメッセージングで使用することもできます。そのためには、画像の Liquid フィールドで catalogs タグと item オブジェクトを使用します。
例えば、Games カタログの image_link を「Tales」のプロモーションメッセージに追加するには、カタログアイテムフィールドで id を選択し、表示する情報フィールドで image_link を選択します。これにより、以下の Liquid タグが画像フィールドに追加されます。
1
2
3
{% catalog_items Games 1234 %}
{{ items[0].image_link }}

Liquid がレンダリングされると、次のように表示されます。

カタログアイテムのテンプレート化
テンプレート化を使って、カスタム属性に基づいてカタログアイテムをダイナミックに取得することもできます。例えば、あるユーザーがカスタム属性 wishlist(カタログのゲーム ID の配列)を持っているとします。
1
2
3
4
5
6
7
8
{
"attributes": [
{
"external_id": "user_id",
"wishlist": ["1234", "1235"]
}
]
}
カタログ内の JSON オブジェクトは、API を介してのみ取り込まれます。CSVファイルを使用して JSON オブジェクトをアップロードすることはできません。
Liquid テンプレートを使用することで、ウィッシュリストの ID をダイナミックに取り出し、メッセージで使用できます。そのためには、カスタム属性に変数を割り当て、「パーソナライゼーションを追加」モーダルを使用して、配列から特定のアイテムを取り出します。カタログアイテム ID として参照する変数は、`` のように中かっこで囲む必要があります。
配列は 1 ではなく 0 から始まることを忘れないでください。
例えば、「Tales」(ウィッシュリストに含まれているカタログのアイテム)がセール中であることをユーザーに通知するために、メッセージ作成画面で以下を追加できます。
1
2
3
4
{% assign wishlist = {{custom_attribute.${wishlist}}}%}
{% catalog_items Games {{ wishlist[0] }} %}
Get {{ items[0].title }} now for {{ items[0].price }}!
以下のように表示されます。
今すぐ Tales を 7.49 ドルでゲットしよう!
テンプレート化により、各ユーザーのカスタム属性、イベントプロパティ、その他のテンプレート化可能なフィールドに基づいて、ユーザーごとに異なるカタログアイテムをレンダリングできます。
CSV のアップロード
追加する新しいカタログアイテムや、更新するカタログアイテムの CSV をアップロードできます。アイテムのリストを削除するには、アイテム ID の CSV をアップロードして削除できます。
Liquid の使用
Liquid ロジックを使用してカタログを手動で組み立てることもできます。ただし、存在しない ID を入力しても、Braze はオブジェクトのない items 配列を返すことに注意してください。配列のサイズをチェックしたり、if ステートメントを使用して配列が空の場合を考慮するなど、エラー処理を含めることをお勧めします。
Liquid を含むカタログアイテムのテンプレート化
コネクテッドコンテンツと同様に、Liquid タグで :rerender フラグを使用してカタログアイテムの Liquid コンテンツをレンダリングする必要があります。:rerender フラグは 1 レベルの深さまでしか適用されないことに注意してください。つまり、ネストされた Liquid タグ呼び出しには適用されません。
カタログアイテムにユーザープロファイルフィールド(Liquid パーソナライゼーションタグ内)が含まれている場合は、Liquid を適切にレンダリングするために、テンプレート化の前にメッセージ内でこれらの値を Liquid で事前に定義する必要があります。:rerender フラグが指定されていない場合、生の Liquid コンテンツがそのままレンダリングされます。
例えば、「Messages」という名前のカタログに、この Liquid を含むアイテムがあるとします。

以下の Liquid コンテンツをレンダリングするには:
1
2
3
4
Hi ${first_name},
{% catalog_items Messages greet_msg :rerender %}
{{ items[0].Welcome_Message }}
次のように表示されます。
1
2
3
Hi Peter,
Welcome to our store, Peter!
カタログの Liquid タグは、カタログ内で再帰的に使用することはできません。
カタログデータの構造化
カタログデータの構造を計画する際は、意図するユースケースから始めて、それに合わせてカタログを設計します。カタログの各行はアイテム(一意の id を持つ)を表します。列にはそのアイテムの属性(URL、説明文、画像 URL、価格、評価、サイズ、色など)を含める必要があります。
標準カタログ呼び出しを使用する場合
標準カタログ呼び出しでは、id 列に対して値をマッチングします。カスタム属性やイベントプロパティ(ID 文字列として)をカタログの Liquid タグに挿入することで、1 つのアイテムの複数の属性をメッセージに取り込むことができます。一般的なユースケースには以下が含まれます。
- 最近閲覧した製品やサービス
- ウィッシュリストのアイテム
- ロケーション別のお得な情報
- 購入した製品
- ライフサイクルステージのコンテンツ
- 最近検索した製品やサービス
カタログセレクションを使用する場合
カタログセレクションを使用すると、カタログの任意の列でフィルタリングし、最大 50 件の一致するアイテムを返すことができます。カスタム属性やイベントプロパティをセレクションフィルターに挿入することで、結果がユーザーごとにパーソナライズされます。一般的なユースケースには以下が含まれます。
- カテゴリがユーザーの好みと一致するアイテム
- ユーザーの好みのブランド、料理、サイズに一致するアイテム
- サブスクリプションタイプやロイヤルティティアのコンテンツ
- ユーザーの平均注文額の範囲内の製品
主な違いは、標準カタログ呼び出しが id で単一の既知のアイテムを検索するのに対し、カタログセレクションはカタログ全体をクエリして、フィルター条件に一致する複数のアイテムを返すことです。
GitHub でこのページを編集