フローメールで動的ブロックを構築する方法
このページで学べること
動的テーブルのブロックを用い、トリガーにメトリックを使用したフローに商品情報やイベント情報を追加する方法を学びます。この記事では、カゴ落ちリマインダーで「カートに残された商品」を表示するを例を用いて、動的ブロックを作成する手順を紹介します。
Klaviyo にあらかじめ組み込まれている E コマース連携(例:Shopify、BigCommerce、Magento、WooCommerce)を使用している場合、これらのブロックを手動で構築する必要はありません。代わりに、フローライブラリで、テンプレートとして使うのに最適な、あらかじめ用意されたフローメールを検索してください。
メトリックによってトリガーされるフローでは、そのフローのトリガーとなったイベントに基づいて、メール内容をパーソナライズできます。例えば、顧客がチェックアウトを開始した場合、カゴ落ちメールで商品画像や価格を表示し、カートに戻って購入を完了するよう促すことができます。動的テーブルのブロックは、カート内の各商品に関する情報を順番に表示します。
始める前に
作業を開始する前に、使用可能なイベントデータが存在することを確認してください。[アナリティクス] > [メトリック] に移動すると、Klaviyo にあるイベントを見ることができます。
イベントデータやプロファイルデータをメールで活用することに慣れていない場合は、まずはメッセージのパーソナライズに関するレファレンスをご覧ください。
また、Klaviyo におけるデータ型、特にリスト(配列)について理解しておくと役に立ちます。配列とは、同じ構造を持つ複数のデータを保存するための形式です。例えば、顧客のカート内の商品は、チェックアウト開始イベント内で 1 つの配列として保存されます。items配列には、注文された各商品につき 1 つのエントリが含まれ、各エントリにはその商品の詳細(商品名、画像 URL、数量、サイズ、色など)が含まれます。
どのようなフローに動的テーブルのブロックを使用できますか?
動的テーブルのブロックには、顧客が何らかの形でやりとりした(購入した、カートに残したなど)1 つ以上の商品に関する情報が含まれます。動的テーブルブロックは、商品の数が顧客の行動によって変動するイベントで特に便利です。動的テーブルのブロックは、以下のイベントをトリガーとするフローで役立ちます。
- 注文の確定(注文確認フロー)
- チェックアウト開始(チェックアウト落ちフロー)
- 注文発送済み(配送確認フロー)
- 注文キャンセル(キャンセル確認)
- 1 つ以上の商品のリストを含むその他のイベント
イベントで単一の商品詳細のみが提供され、繰り返しに使用する商品リストがない場合は、静的テーブルブロックを使用してください。例:
- 商品をカートに追加(カゴ落ちフロー)
- 商品閲覧(閲覧放棄フロー)
単一商品イベント用の静的テーブルブロックの作成方法についてはこちらをご覧ください。
1. フローを作成する
フローの作成から始めます。
- Klaviyo の [フロー] タブに移動します。
- [フローを作成] をクリックします。
- [独自に作成] をクリックします。
- フローに名前を付け、[フローを作成] をクリックします。
- [トリガーを選択] にある[メトリック] をクリックします。
- トリガーメトリックの送信元となる連携サービス(例:Shopify)を選択します。
- フローのトリガーとなるイベントを選択します。この例では、「チェックアウト開始」をイベントとして使用します。これにより、カゴ落ちブロックを構築するのに必要なイベントデータにアクセスできるようになります。
- 保存をクリックし、トリガーを確認してから、確認して保存をクリックしてください。
- フローにメールアクションをドラッグ&ドロップします。
2. フローメールに動的テーブルを追加する
次に、フローメールに動的テーブルを追加します。
- 上記手順 9 でフローに追加したメールブロックをクリックします。
- [テンプレート] の横にある [テンプレートを選択] をクリックします。
- ベースとして使用するテンプレートを選びます。
- テーブルブロックをメールにドラッグします。
- [スタイル] > [動的] をクリックして、テーブルを動的ブロックに変換します。2つのフィールドが表示されます。[行コレクション]と[行エイリアス]です。これらはステップ3と4で入力します。
- [コンテンツ] タブに戻り、列のタイプを調整します。
- 一般的にカゴ落ちメッセージでは、左側にカゴに残された商品の画像、右側にその商品の詳細が表示されます。セルセレクターで左側または右側のセルを選択し、次にセルコンテンツでテキストまたは画像をクリックして、セルの種類を変更します。

3. 行コレクションを指定する
このステップでは、反復処理を行う配列の名前を [行コレクション] フィールドに追加します。配列の名前を見つけるには、以下を行います。
- [プレビュー] をクリックします。
- 商品データを含むサンプルイベントを選択し、必要な情報を含む配列が見つかるまでそのプレビューデータをスクロールしてください。
- フローのトリガーとなるアクションを完了した人がまだいない場合、そのフローで利用できるプレビューデータはありません。プレビューデータがない場合、自社サイトに移動してアクション(カートにアイテムを追加してチェックアウトを開始するなど)を実行してみてください。Klaviyo のプレビューオプション内にイベントが表示されます。
- このShopifyの例では、商品情報を格納する配列が2つあります:
- Items
各商品名だけのシンプルなリストを含むトップレベルの配列。 - line_items
各商品のタイトル、価格、SKU、画像URLなどの詳細情報を含む、extraオブジェクト内にネストされた配列です。
- テーブルブロックの繰り返し表示に必要な情報が揃っているため、より詳細な配列「line_items」を使用することをお勧めします。行コレクションフィールドで設定する適切な変数を見つけるには、配列の最初のセクション内にある2つの変数を選択してコピーしてください。この例では、priceとtitleのタグをコピーします。この例の2つのタグは次のとおりです:
{{ event.extra.line_items.0.price }}{{ event.extra.line_items.0.title }}


- 波括弧は無視して、その中の変数を確認してください。両方の変数の先頭が同じである点に注意してください:
event.extra.line_items.0。 .0より前のすべてを行コレクションとして使用します。この例では、値はevent.extra.line_itemsです。プレビューを閉じ、テーブルのスタイルタブに戻り、中かっこを付けずにその値を行コレクションに入力してください。
フォールバックコンテンツの設定方法(任意)
選択した行コレクションにデータが存在しない場合は、フォールバックコンテンツが表示されます。フォールバックコンテンツは、作成するテーブルで使うデータが、トリガーイベント内で常に表示されるとは限らない場合に必要です。フォールバックコンテンツを追加するには、[フォールバックコンテンツ] オプションをオンにし、表示されるフィールドにコンテンツ(テキストや画像など)を追加します。

4. 行エイリアスを選択する
行エイリアスには、任意のテキストを使用できます(特殊文字やスペースは使用できません)。このエイリアスは動的テーブルのブロック内で使用し、先ほど選択した配列からどの変数を取得するかを指定するために使います。覚えやすいように、シンプルで分かりやすいエイリアスを選ぶことをお勧めします。
この例では、動的テーブルのブロックがカゴ落ちした商品のリストを順番に繰り返し表示するため、エイリアスには「item」を使用するとよいでしょう。ブロックがブログ記事のリストを繰り返す場合は、エイリアスに「post」を使用することをお勧めします。
エイリアスには好きな名前を使えますが、配列から変数を参照する際は、必ず同じエイリアスを使用するようにしてください(詳細は後述)。

[行コレクション] と [行エイリアス] フィールドの入力が完了したら、テーブルの作成を開始できます。
5. 動的な商品詳細を追加する
データソースの設定が完了したら、タグを使ってメールにテキストを追加できます。このメールはカゴ落ちフローで使うため、カートに残された商品の名前に加えて、価格や購入リンクなどの詳細を表示することが重要です。
ブロックに商品名を入力する手順は以下のとおりです。
- テーブルのコンテンツタブで、セルセレクターの下に商品詳細を表示するセルを選択してください。左に画像、右にテキストを表示するには、右側のセルを選択してください。
- メール内のテキストセルをダブルクリックしてから、プレビューモーダルからイベント変数全体を貼り付けます(例:
{{ event.extra.line_items.0.title }})。 - 変数内の行コレクション(すなわち、[行コレクション] フィールドに入力したテキスト)と、その後に続くドットと番号を、ステップ 4 で設定したエイリアス(例:item)に置き換えます。このとき、外側の括弧はそのまま残します。この例では、
{{ event.extra.line_items.0.title }}が{{ item.title }}になります。

- メールのプレビューで、タイトルが表示されていることを確認してください。表示されない場合は、スペル、大文字・小文字の区別、書式設定に間違いがないか再確認してください。また、[スタイル] タブの設定にエラーがないかも確認してください。
同じ手順を繰り返して、その他の商品の詳細も追加します。
商品名にハイパーリンクを設定する方法
商品名にハイパーリンクを追加する方法は以下のとおりです。
- イベントプロパティから商品の URL 変数を見つけます。
- 行コレクションと番号を、前述した変数と同様に、行エイリアスに置き換えます(例:{{ event.extra.line_items.0.url }} を {{ item.url }} に置き換えます)。
- 商品名の変数全体をハイライトします(例:
{{ item.title }})。 - リンクアイコンをクリックし、URL フィールドに URL 変数を貼り付けます。適用をクリックしてください。
各連携アプリの一般的な商品 URL 変数
BigCommerce
イベント変数:{{ event.extra.items.0.product.url }}
最終タグ:{{ organization.url|trim_slash}}{{ item.product.url }}
Magento 1
イベント変数:{{ event.extra.line_items.0.product.id }}
最終タグ:{{ organization.url|trim_slash}}/catalog/product/view/id/{{ item.product.id }}
Magento 2
イベント変数:{{ event.Items.0.Product.FullURL }}
最終タグ:{{ item.Product.FullURL }}
Shopify
イベント変数:{{ event.extra.line_items.0.product.handle }}
最終タグ:{{ organization.url|trim_slash}}/products/{{ item.product.handle }}
WooCommerce
イベント変数: {{ event.extra.Items.0.URL }}
最終タグ: {{ item.URL }}
通貨変数に関する注意点
商品価格がイベントの詳細で (通貨記号なしの) 数値として渡される場合は、currency_format タグを使用して通貨形式を適用してください。このタグを適用するには、以下のコード内にある variable_name を、価格変数全体に置き換えます(波括弧は除いてください)。
{% currency_format variable_name %}
最終的な変数は次のようになります。
{% currency_format item.price %}
6. 画像を追加する
動的な画像を挿入するには、プレビューで画像のイベント変数を探します。多くの場合、この変数はimage、img、またはsrcの下にありますが、外部連携によって異なります。この例では{{ event.extra.line_items.0.product.images.0.src }}です。手順5と同様に、event.extra.line_items.0をitemに置き換えます。imagesの後の.0はそのまま残してください。これは、各商品の最初の画像を選択します。
- この変数を取得したら、画像を表示したい列(この場合は左の列)に移動します。
- 現在、[セルのコンテンツ] が [テキスト] に設定されている場合は、[画像] をクリックします。
- [画像を選択] をクリックします。
- 動的画像タブを選択します。
- カスタマイズした画像変数
{{ item.product.images.0.src }}を動的変数または動的URLフィールドに貼り付けます。 - [保存] をクリックします。
- 画像をクリック可能にするために、[リンクアドレス] フィールドにステップ 5 の商品 URL 変数を追加します。
- 必要に応じて調整しながら、まずは250–300ピクセルを目安に、画像の最大幅を設定します。
7. メールをプレビューする
上記のステップを完了すると、プレビュー時にメールテンプレートは以下のように表示されます。

プレビューをクリックし、可能であれば複数の商品が含まれるサンプルイベントを選択してください。各商品の画像、詳細、リンクが一致していることを確認してください。画像やその他の詳細が不足している場合は、プレビューデータに対して変数のスペルと構造を確認し、ブロックの[スタイル]タブも確認してください。
完了したら、プレビューを閉じて[終了]をクリックします。カゴ落ちフローを有効にする前に、カゴ落ちフローガイドでタイミングとフィルターの設定を完了してください。
他のメトリックをトリガーとするフロー用にも、同様の方法で動的ブロックを作成できます。
単一商品のイベント用に静的テーブルブロックを作成する方法
イベントが商品リストなしで単一商品の詳細を提供する場合は、静的テーブルブロックを使用してください。このようなイベントでは、[行コレクション] や [行エイリアス] を設定する必要はなく、イベントデータに含まれる変数をそのまま編集せずに使用できます。
- Klaviyo の [フロー] タブに移動します。
- [フローを作成] をクリックします。
- [独自に作成] をクリックします。
- フローに名前を付け、[フローを作成] をクリックします。
- [トリガーを選択] にある[メトリック] をクリックします。
- メトリックを送信する外部連携を選択し、商品の閲覧や商品をカートに追加などの単一商品のメトリックを選択します。
- 保存をクリックし、トリガーを確認してから、確認して保存をクリックしてください。
- フローにメールアクションをドラッグ&ドロップします。
- メールブロックをクリックし、テンプレートの横にあるテンプレートを選択をクリックしてください。
- ベースとして使用するテンプレートを選択します。
- テーブルブロックをメールにドラッグします。
- デフォルトでは、[ Styles] の Data フィールドは Static に設定されています;この設定を変更しないでください。

- [プレビュー] をクリックして、メッセージに使用できる変数を確認します。画像URL変数をクリックしてコピーし、その後プレビューを閉じます。

- [セルセレクター] と [セルコンテンツ] フィールドを使用して、左側のセルを [画像] セルタイプに設定します。
- [画像を選択] をクリックします。
- [動的画像] を選択します。
- コピーした画像 URL 変数を動的変数または動的 URL のフィールドに貼り付けます。
- [保存] をクリックします。
- 右のセルに [テキスト] セルタイプを設定します。
- 表示したい変数(例:商品タイトルや商品価格)をコピーするには、[プレビュー]をクリックします。プレビューを閉じてから、メール内のテキストセルをダブルクリックし、変数を貼り付けます。追加したいその他の詳細についても同様に繰り返します。

- カートに戻るための CTA ボタンなど、追加のブロックを配置し、メールを好きなスタイルにデザインします。
- プレビューをクリックし、フローのトリガー用のサンプルイベントを使用して、商品の画像、テキスト、リンクを確認します。
- 完了したら、プレビューを閉じて[終了]をクリックします。
その他のリソース
- カゴ落ちフロー作成ガイド
Klaviyo でカゴ落ちフローを設定する方法を学び、E コマースの収益増加と顧客コミュニケーションのパーソナライズ化を実現しましょう。
- メッセージのパーソナライズに関するレファレンス
Klaviyo のテンプレートタグを使って、顧客体験をカスタマイズする方法について説明します。
- メールで商品を縦に表示する方法
カゴ落ちフローと注文確認フローで、商品を縦方向(つまり、商品情報の横ではなく上に画像を表示)に表示する方法を確認します。
- Apply programming logic concepts to build more personalized messages