Skip to content

カタログの使用

カタログを作成した後、Liquidを使用して、BrazeのCampaignで非ユーザーデータを参照できます。Liquidがサポートされているドラッグ&ドロップエディター内の任意の場所を含む、すべてのメッセージングチャネルでカタログを使用できます。

メッセージでカタログを使う

以下の動画では、メッセージでカタログを使用する方法を説明しています。

ステップ 1:パーソナライゼーションタイプを追加する

任意のメッセージ作成画面で、「Add Personalization」を選択し、Personalization typeとして「Catalog Items」を選択します。次に、カタログ名を選択します。先ほどの例を使って、「Games」カタログを選択します。

「Add Personalization」モーダルで「Catalog Items」が選択され、Gamesカタログが選ばれ、catalog_itemsタグを含むLiquidプレビューが表示されている画面。

以下のLiquidプレビューがすぐに表示されます。

1
{% catalog_items Games %}

ステップ 2:カタログアイテムを選択する

次に、カタログアイテムを追加します。ドロップダウンを使って、カタログアイテムと表示する情報を選択します。この情報は、カタログを生成するために使用された、アップロード済みのCSVファイルの列に対応しています。

例えば、Talesゲームのタイトルと価格を参照するには、カタログアイテムとしてTalesのid(1234)を選択し、表示する情報としてtitlepriceをリクエストします。

1
2
3
{% catalog_items Games 1234 %}

Get {{ items[0].title }} for just {{ items[0].price }}!

これは次のように表示されます。

Get Tales for just 7.49!

カタログのエクスポート

ダッシュボードからカタログをエクスポートするには、次の2つの方法があります。

  • Catalogsセクションのカタログ行にカーソルを合わせます。次に、Export catalogボタンを選択します。
  • カタログを選択します。次に、カタログのPreviewタブでExport catalogボタンを選択します。

エクスポートを開始すると、CSVファイルをダウンロードするためのメールが届きます。このファイルの取得期限は最大4時間です。

その他のユースケース

複数のアイテム

メッセージで使用できるアイテムは1つだけではありません。Add Personalizationモーダルを使って、一度に最大3つのカタログアイテムを追加できます。さらに追加するには、作成画面で再度Add Personalizationを選択し、追加のカタログアイテムや表示する情報を選びます。

この例では、Tales、Teslagrad、Acaratusの3つのゲームのidCatalog Itemsに追加し、Information to Displayとしてtitleを選択します。

「Add Personalization」モーダルで3つのカタログアイテムIDが選択され、「Information to Display」にtitleが選ばれ、各アイテムのタイトルを一覧表示するLiquidプレビューが表示されている画面。

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!

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が空白の場合、メッセージは中止されます。

セレクションが返すアイテム数を出力するには、タグの後のitems配列に対してLiquidのsizeフィルターを使用します(単一のフィールドではなく配列に対して使用してください)。

1
{% catalog_selection_items item-list selections %}{{ items | size }}

画像の使用

カタログ内の画像を参照してメッセージングで使用することもできます。そのためには、画像のLiquidフィールドでcatalogsタグとitemオブジェクトを使用します。

例えば、Gamesカタログのimage_linkをTalesのプロモーションメッセージに追加するには、Catalog Itemsフィールドでidを選択し、Information to Displayフィールドでimage_linkを選択します。これにより、以下のLiquidタグが画像フィールドに追加されます。

1
2
3
{% catalog_items Games 1234 %}

{{ items[0].image_link }}

画像フィールドでカタログのLiquidタグが使用されているコンテンツカード作成画面。

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

カタログのLiquidタグがレンダリングされたコンテンツカードの例。

カタログアイテムのテンプレート化

テンプレート化を使って、カスタム属性に基づいてカタログアイテムをダイナミックに取得することもできます。例えば、あるユーザーがカスタム属性wishlist(カタログのゲームIDの配列)を持っているとします。

1
2
3
4
5
6
7
8
{
    "attributes": [
        {
            "external_id": "user_id",
            "wishlist": ["1234", "1235"]
        }
    ]
}

Liquidテンプレートを使用することで、ウィッシュリストのIDをダイナミックに取り出し、メッセージで使用できます。そのためには、カスタム属性に変数を割り当てAdd Personalizationモーダルを使用して、配列から特定のアイテムを取り出します。カタログアイテムIDとして参照する変数は、``のように中かっこで囲む必要があります。

例えば、Tales(ウィッシュリストに含まれているカタログのアイテム)がセール中であることをユーザーに通知するために、メッセージ作成画面で以下を追加できます。

1
2
3
4
{% assign wishlist = {{custom_attribute.${wishlist}}}%}
{% catalog_items Games {{ wishlist[0] }} %}

Get {{ items[0].title }} now for {{ items[0].price }}!

以下のように表示されます。

Get Tales now for just 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を含むアイテムがあるとします。

カタログテーブルの行。idがgreet_msg、Welcome_Message列にはLiquid変数を含む「Welcome to our store」のメッセージが表示されている。

以下の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がメッセージやCanvasステップで期待どおりに表示されない場合は、以下を確認してください。

症状 確認事項
プレビューではアイテムが表示されるが、ライブ送信では空になる 送信時にカタログのアイテムIDが存在することを確認してください。Liquid内のIDが行と一致しない場合、Brazeは空のitems配列を返します。Liquidの使用を参照してください。タイプミスや、トリガーまたはユーザープロファイルに存在しないIDソース(イベントプロパティなど)がないか確認してください。
作成画面のプレビューはCampaignでは動作するがCanvasでは動作しない 正しいLiquidコンテキスト(Canvasコンテキストプロパティイベントプロパティ)を使用していること、およびそれらのフィールドがトリガーに存在することを確認してください。コンテキストプロパティとイベントプロパティを参照してください。
セレクションがアイテムを返さない セレクションフィルターと制限を確認してください。カタログデータが同期されていること、および列名がフィルターと一致していることを確認してください。
:rerenderまたはテンプレート化された配信が正しく表示されない カタログフィールド内のネストされたLiquidには、:rerenderと変数の正しい順序が必要です。Liquidを含むカタログアイテムのテンプレート化を参照してください。テンプレート化されたアプリ内メッセージはトリガー時に解決されます。テンプレート化されたアプリ内メッセージとは?を参照してください。一部のチャネルではカタログタグが制限されています(例えば、バナーでの特定の:rerenderの使用)。バナーFAQのすべてのLiquidタグがサポートされていますか?を参照してください。

一般的なLiquidの動作については、LiquidユースケースおよびLiquidの使用を参照してください。

カタログデータの構造化

カタログデータの構造を計画する際は、意図するユースケースから始めて、それに合わせてカタログを設計します。カタログの各行はアイテム(一意のidを持つ)を表します。列にはそのアイテムの属性(URL、説明文、画像URL、価格、評価、サイズ、色など)を含める必要があります。

標準カタログ呼び出しを使用する場合

標準カタログ呼び出しでは、id列に対して値をマッチングします。カスタム属性やイベントプロパティ(ID文字列として)をカタログのLiquidタグに挿入することで、1つのアイテムの複数の属性をメッセージに取り込むことができます。一般的なユースケースには以下が含まれます。

  • 最近閲覧した製品やサービス
  • ウィッシュリストのアイテム
  • ロケーション別のお得な情報
  • 購入した製品
  • ライフサイクルステージのコンテンツ
  • 最近検索した製品やサービス

カタログセレクションを使用する場合

カタログセレクションを使用すると、カタログの任意の列でフィルタリングし、最大50件の一致するアイテムを返すことができます。カスタム属性やイベントプロパティをセレクションフィルターに挿入することで、結果がユーザーごとにパーソナライズされます。一般的なユースケースには以下が含まれます。

  • カテゴリがユーザーの好みと一致するアイテム
  • ユーザーの好みのブランド、料理、サイズに一致するアイテム
  • サブスクリプションタイプやロイヤルティティアのコンテンツ
  • ユーザーの平均注文額の範囲内の製品

主な違いは、標準カタログ呼び出しがidで単一の既知のアイテムを検索するのに対し、カタログセレクションはカタログ全体をクエリして、フィルター条件に一致する複数のアイテムを返すことです。

New Stuff!