このドキュメントでは、Adobe クライアントデータレイヤー拡張機能の使用例とベストプラクティスを説明します。
拡張機能をインストールするには、Experience PlatformUI またはデータ収集 UI の拡張機能カタログに移動し、「クライアントデータレイヤーをAdobe」を選択します。
ACDL スクリプトは、デフォルトでは、変数名 adobeDataLayer
で新しいデータレイヤーを作成します。この名前は、拡張機能ビューで必要に応じて変更できます。設定した名前は、タグが読み込まれる際にインスタンス化されます。
オブジェクト名を変更する場合、元の adobeDataLayer
オブジェクトは引き続きインスタンス化され、選択した新しい変数名に複製されます。
拡張機能を使用すると、データレイヤー上のイベントをリッスンできます。 使用できるイベントは次のとおりです。
このオプションを選択すると、イベントリスナーはこのデータレイヤーに加えられた変更をリッスンします。
イベントをプッシュしても、データレイヤー自体は変更されません。
次のプッシュイベントの例は、リスナーによってトラッキングされます。
adobeDataLayer.push({"data":"something"})
adobeDataLayer.push({"event":"myevent","data":"something"})
次のプッシュイベントの例は、リスナーによってトラッキングされません。
adobeDataLayer.push({"event":"myevent"})
このオプションを選択すると、イベントリスナーは、データレイヤーにプッシュされたすべてのイベントをリッスンします。
次のプッシュイベントの例は、リスナーによってトラッキングされます。
adobeDataLayer.push({"event":"myevent"})
adobeDataLayer.push({"event":"myevent","data":"something"})
次のプッシュイベントの例は、リスナーによってトラッキングされません。
adobeDataLayer.push({"data":"something"})
イベントを指定すると、イベントリスナーで特定の文字列に一致するイベントをトラッキングできます。
例えば、myEvent
を指定してこの設定を使用すると、リスナーは次のプッシュイベントのみをトラッキングします。
adobeDataLayer.push({"event":"myEvent"})
イベントリスナーの範囲を変更することもできます。オプションの違いの概要を次に示します。
all
:デフォルトのオプションです。上記で選択した条件が過去に満たされるか、将来プッシュされるたびにルールをトリガーします。非同期実装を使用する場合に最も安全なオプションです。future
:このオプションは、条件に一致する新しいプッシュイベントがデータレイヤーに送信される場合にのみ、ルールをトリガーします。past
:このオプションは、トリガー条件に一致する古いプッシュイベントに対してのみルールを設定します。条件に一致する新しいプッシュは無視され、ルールはトリガーされません。以下の節では、拡張機能がサポートするアクションの概要を説明します。
拡張機能を使用すると、データレイヤーの長さをリセットでき、シングルページアプリケーション(SPA)で限られたサイズを維持するのに役立ちます。
ただし、前にプッシュメソッド中に設定した情報が完全に削除される可能性は、現在のところありません。
「計算済み状態のリセットと設定」アクションは、最後に計算された状態をコピーし、データレイヤーオブジェクトを空にして、最後の状態を再プッシュします。
拡張機能を使用すると、JSON コンテンツをデータレイヤー自体にプッシュできます。このアクションにより、JSON 内で直接データ要素を使用できます。 JSON エディター内では、データ要素はパーセント表記(%dataElementName%
など)を使用して参照する必要があります。
{
"page": {
"url": "%url%",
"previous_url": "%previous_url%",
"concatenated_values": "static string %dataElement%"
}
}
以下の節では、拡張機能が提供するユニークなデータ要素のタイプについて説明します。
データレイヤーの計算済み状態のデータ要素は、設定に応じて、次の 2 つのいずれかを返すことができます。
data.foo
など)を使用して指定します。このデータ要素は、データレイヤーのサイズを返します。 データレイヤーのサイズは、このオブジェクトにプッシュされた要素の数で表されます。
以下のプッシュイベントのリストの場合、データ要素は整数 2
を返します。
adobeDataLayer.push({"event":"myEvent"})
adobeDataLayer.push({"data":{"foo":"bar"}})