タグルールの作成
タグルールを使用して、XDM オブジェクトと共にイベントをAdobe Experience Platform Edge Networkに送信する方法を説明します。 タグルールは、イベント、条件、アクションを組み合わせたルールで、タグプロパティに対し、アクションの実行を指示します。 Platform Web SDK では、ルールを使用して、適切なデータで Platform Edge Networkにイベントを送信します。
学習目標
このレッスンを終了すると、次の操作を実行できます。
- タグ内でルールを管理する際は、命名規則を使用します
- 「変数を更新」アクションと「イベントを送信」アクションを使用して XDM フィールドでイベントを送信
- 複数のルールをまたいで複数の XDM フィールドセットをスタックする
- 個々または全体の配列データ要素の XDM オブジェクトへのマッピング
- 開発ライブラリへのタグルールのPublish
前提条件
データ収集タグと Luma デモサイトに精通し、チュートリアルの前のレッスンを完了しました。
命名規則
タグでルールを管理するには、標準の命名規則に従うことをお勧めします。 このチュートリアルでは、5 つのパートで構成される命名規則を使用します。
- [location] - [event] - [purpose] - [order]
ここで、
- location は、ルールが実行されるサイトの 1 つ以上のページです
- event:ルールのトリガー
- 目的 は、ルールによって実行される主なアクションです
- order は、他のルールに対して実行するルールの順序です
タグルールの作成
タグでは、ルールを使用して、様々な条件下でアクション(呼び出し実行)を実行します。 Platform Web SDK タグ拡張機能には、このレッスンで使用する 2 つのアクションが含まれています。
- 変数を更新 は、データ要素を XDM オブジェクトのプロパティにマッピングします
- イベントを送信 XDM オブジェクトをExperience PlatformEdge Networkに送信します
このレッスンの残りの部分では、以下を行います。
-
変数を更新 アクションを使用してルールを作成し、XDM フィールドの「グローバル設定」を定義します。
-
「グローバル設定」を上書きし、特定の条件下(例えば、製品ページに製品の詳細を追加するなど)で追加の XDM フィールドを提供する追加のルールを 変数を更新 アクションで作成します。
-
イベントを送信 アクションを使用して、XDM オブジェクト全体をAdobe Experience Platform Edge Networkに送信する別のルールを作成します。
これらのルールはすべて、「order」オプションを使用して適切に順序付けされます。
このビデオでは、プロセスの概要を説明します。
グローバル設定フィールド
グローバル XDM フィールドのタグルールを作成するには:
-
このチュートリアルで使用するタグプロパティを開きます
-
左側のナビゲーションで ルール に移動します
-
「新規ルールを作成」ボタンを選択します
-
ルール名を設定します。
all pages - library loaded - set global variables - 1
-
「イベント」セクションで、「追加」を選択します
-
Core 拡張機能 を使用し、イベントタイプ として 「ライブラリの読み込み(ページのトップ)」を選択します
-
詳細 ドロップダウンを選択し、「注文」として
1
と入力しますnote note NOTE 注文番号が小さいほど、早く実行されます。 したがって、「グローバル設定」には低い注文番号を付けます。 -
「変更を保持」を選択して、メインのルール画面に戻ります
-
「アクション」セクションで、「追加」を選択します
-
Extension として、「Adobe Experience Platform Web SDK」を選択します
-
アクションタイプ として、「変数を更新」を選択します
-
データ要素 として、 データ要素の作成のレッスンで作成した
xdm.variable.content
を選択します
次に、 データ要素 を、XDM オブジェクトで使用される スキーマ にマッピングします。 個々のプロパティまたはオブジェクト全体にマッピングできます。 この例では、個々のプロパティにマッピングします。
-
eventType フィールドを見つけて選択します
-
web.webpagedetails.pageViews
の値を入力note tip TIP eventType
フィールドに入力する値を理解するには、スキーマページに移動し、「eventType
」フィールドを選択して、推奨値を右側のパネルに表示する必要があります。 必要に応じて、新しい値を入力することもできます。
-
次に、スキーマ内で
identityMap
オブジェクトを見つけて選択します -
identityMap.loginID
データ要素へのマッピングnote tip TIP データ要素が null の場合、XDM フィールドはネットワークリクエストに含まれません。 したがって、ユーザーが認証されず、 identityMap.loginID
データ要素が null の場合、identityMap
オブジェクトは送信されません。 これが、「グローバル設定」で定義できる理由です。 -
web
オブジェクトに到達するまで下にスクロールします -
選択して開きます
-
次のデータ要素を対応する
web
XDM 変数にマッピングしますweb.webPageDetials.name
~%page.pageInfo.pageName%
web.webPageDetials.server
~%page.pageInfo.server%
web.webPageDetials.siteSection
~%page.pageInfo.hierarchie1%
-
web.webPageDetials.pageViews.value
を1
に設定します。note tip TIP Adobe Analyticsでビーコンをページビューとして処理する場合、 eventType
をweb.webpagedetails.pageViews
にもweb.webPageDetails.pageViews.value
にも設定する必要はありませんが、他のダウンストリームアプリケーションのページビューを示す標準的な方法があると便利です。 -
次の画面で、ルールの 変更を保持 を選択してから 保存 を選択し、ルールの作成を完了します
製品ページフィールド
次に、追加の順序付きルールで 変数を更新 を使用して、XDM オブジェクトをエンリッチメントしてから、Platform Edge Network に送信します。
まず、Luma の製品詳細ページで製品表示を追跡します。
-
「ルールを追加」を選択します
-
ecommerce - library loaded - set product details variables - 20
という名前を付けます -
イベントの下の
-
Extension で Core を選択します。
-
イベントタイプ で、「ライブラリの読み込み(ページのトップ)」 Library Loaded (Page Top) を選択します。
-
選択して 詳細オプション を開き、
20
を入力します。 この順序値によって、グローバル設定を設定するルールが afterall pages - library loaded - set global variables - 1
実行されるようになります。 -
「変更を保持」を選択します
-
条件 で、「追加 を選択し す
-
論理タイプ は 標準 のままにします
-
拡張機能 は コア のままにします
-
条件タイプ を クエリ文字列なしのパス として選択
-
右側で、「正規表現 切り替え を有効にします
-
path equals で
/products/
を設定します。 Luma デモサイトの場合、ルールが製品ページのトリガーのみになります -
「変更を保持」を選択します
-
アクション で 追加 を選択します
-
Adobe Experience Platform Web SDK 拡張機能を選択
-
アクションタイプ を 変数を更新 として選択します
-
データ要素 として
xdm.variable.content
を選択します -
commerce
オブジェクトまでスクロール ダウンします -
productViews オブジェクトを開き、value を
1
に設定しますnote tip TIP XDM で commerce.productViews.value=1 を設定すると、Analytics の prodView
イベントに自動的にマッピングされます -
eventType
までスクロールし、commerce.productViews
に設定しますnote note NOTE このルールは優先順位が高いので、「グローバル設定」ルールの eventType
定が上書きされます。eventType
には 1 つの値のみを含めることができ、最も価値のあるイベントで設定することをお勧めします。 -
までスクロールし、配列
productListItems
選択します -
「個別の項目を指定」を選択します
-
項目を追加 を選択します
note caution CAUTION productListItems
はarray
データタイプなので、データは要素の集まりとして取り込まれるものと想定しています。 Luma デモサイトのデータレイヤー構造と、Luma サイトで一度に 1 つの製品しか表示できないので、項目を個別に追加します。 独自の web サイトに実装する場合、データレイヤーの構造によっては、配列全体を指定できる場合があります。 -
選択して 項目 1 を開く
-
productListItems.item1.SKU
を%product.productInfo.sku%
にマッピングします -
「変更を保持」を選択します
-
「保存」を選択して、ルールを保存します
買い物かごフィールド
配列が XDM スキーマの形式と一致する場合は、配列全体を XDM オブジェクトにマッピングできます。 前に作成したカスタムコードデータ要素 cart.productInfo
、Luma 上の digitalData.cart.cartEntries
データレイヤーオブジェクトをループし、XDM スキーマの productListItems
オブジェクトの必要な形式に変換します。
説明するには、以下の Luma サイトデータレイヤー(左)と翻訳済みデータ要素(右)の比較を参照してください。
データ要素と productListItems
構造を比較します(ヒント。一致する必要があります)。
price
や qty
など)でデータ要素内の数値に再書式設定される方法に注意してください。 これらの形式要件は、Platform のデータ整合性にとって重要であり、 スキーマの設定手順で決定されます。 この例では、quantity は Integer データ型を使用しています。![XDM スキーマデータタイプ](./media_1825e439c524cdcb457e5dfa02d67e14e58a9bdba.png?width=750&format=png&optimize=medium)
次に、配列を XDM オブジェクトにマッピングします。
-
ecommerce - library loaded - set shopping cart variables - 20
という名前の新しいルールの作成 -
イベントの下の
-
Extension で Core を選択します。
-
イベントタイプ で、「ライブラリの読み込み(ページのトップ)」 Library Loaded (Page Top) を選択します。
-
選択して開く 詳細オプション、
20
で入力 -
「変更を保持」を選択します
-
条件 で、「追加 を選択し す
-
論理タイプ は 標準 のままにします
-
拡張機能 は コア のままにします
-
条件タイプ を クエリ文字列なしのパス として選択
-
右側で、「正規表現 切り替え を有効 し せん
-
path equals で
/content/luma/us/en/user/cart.html
を設定します。 Luma デモサイトの場合、ルールが買い物かごページのトリガーのみになることを確認します -
「変更を保持」を選択します
-
アクション で 追加 を選択します
-
Adobe Experience Platform Web SDK 拡張機能を選択
-
アクションタイプ を 変数を更新 として選択します
-
データ要素 として
xdm.variable.content
を選択します -
commerce
オブジェクトまで下にスクロールし、選択して開きます。 -
productListViews オブジェクトを開き、value を
1
に設定しますnote tip TIP XDM で commerce.productListViews.value=1 を設定すると、Analytics の scView
イベントに自動的にマッピングされます -
eventType
を選択し、commerce.productListViews
に設定します -
までスクロールし、「productListItems 配列」を選択します
-
「アレイ全体を提供」を選択します。
-
データ要素へ
cart.productInfo
マッピング -
「変更を保持」を選択します
-
「保存」を選択して、ルールを保存します
以下の違いを持つ同じパターンに従って、チェックアウトと購入のために他の 2 つのルールを作成します。
ルール名: ecommerce - library loaded - set checkout variables - 20
-
条件:/content/luma/us/en/user/checkout.html
-
eventType
をcommerce.checkouts
に設定します。 -
commerce.checkout.value
を1
に設定します。note tip TIP これは、Analytics でイベント scCheckout
設定することと同等です
ルール名: ecommerce - library loaded - set purchase variables - 20
-
条件:/content/luma/us/en/user/checkout/order/thank-you.html
-
eventType
をcommerce.purchases
に設定します。 -
commerce.purchases.value
を1
に設定します。note tip TIP これは、Analytics でイベント purchase
設定することと同等です -
cart.orderId
データ要素にcommerce.order.purchaseID
を設定します。 -
ハードコードされた値
USD
にcommerce.order.currencyCode
を設定しますnote tip TIP これは、Analytics で変数 s.purchaseID
およびs.currencyCode
を設定することと同等です -
までスクロールし、「productListItems 配列」を選択します
-
「アレイ全体を提供」を選択します。
-
データ要素へ
cart.productInfo.purchase
マッピング -
「変更を保持」を選択します
-
「保存」を選択します
完了すると、次のルールが作成されます。
イベントルールを送信
これで変数を設定したので、イベントの送信 アクションを使用して XDM オブジェクト全体を Platform Edge Networkに送信するルールを作成できます。
-
右側の「ルールを追加」を選択して、別のルールを作成します
-
ルール名を設定します。
all pages - library loaded - send event - 50
-
「イベント」セクションで、「追加」を選択します
-
Core 拡張機能 を使用し、イベントタイプ として
Library Loaded (Page Top)
を選択します -
詳細 ドロップダウンを選択し、「順序」に
50
を入力します。 これにより、設定した他のすべてのルール(1
または20
を Order として持つ)の後でこのルールが起動します。 -
「変更を保持」を選択して、メインのルール画面に戻ります
-
「アクション」セクションで、「追加」を選択します
-
Extension として、「Adobe Experience Platform Web SDK」を選択します
-
アクションタイプ として、「イベントを送信」を選択します
-
XDM として、前のレッスンで作成した
xdm.variable.content
データ要素を選択します -
「変更を保持」を選択して、メインのルール画面に戻ります
-
「保存」を選択して、ルールを保存します
ライブラリ内のルールのPublish
次に、ルールを開発環境に公開して、ルールが機能することを検証します。
ライブラリを作成するには:
-
左側のナビゲーションの 公開フロー に移動します
-
「ライブラリを追加」を選択します。
-
名前 に
Luma Web SDK Tutorial
と入力します -
環境 で、「
Development
」を選択します。 -
「変更されたすべてのリソースを追加」を選択します。
note note NOTE 前のレッスンで作成したすべてのタグコンポーネントが表示されます。 Core 拡張機能には、すべての web タグプロパティに必要な基本JavaScriptが含まれています。 -
開発用に保存してビルド を選択します
ライブラリのビルドには数分かかる場合があり、完了すると、ライブラリ名の左側に緑のドットが表示されます。
公開フロー 画面で確認できるように、公開プロセスには多くの詳細があり、これはこのチュートリアルの範囲外です。 このチュートリアルでは、開発環境で 1 つのライブラリのみを使用します。
これで、Adobe Experience Platform Debuggerを使用してリクエスト内のデータを検証する準備が整いました。