データレイヤーの名前を変更する
デフォルトでは、グローバル サイトタグに設定されるデータレイヤーには dataLayer
という名前が付けられます。別の名前を使用するには:
- グローバル サイトタグ スニペット内の「
dataLayer
」のすべてのインスタンスを新しい名前に更新します。 - URL に
l
という名前のクエリ パラメータを追加し、新しいデータレイヤー名を設定します。
<!-- Global site tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=GA_MEASUREMENT_ID&l=gDataLayer"></script>
<script>
window.gDataLayer = window.gDataLayer || [];
function gtag(){gDataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'GA_MEASUREMENT_ID');
</script>
カスタム データレイヤー メソッド
データレイヤーに関数をプッシュすると、this
に設定された抽象データモデルが呼び出されます。この抽象データモデルは、Key-Value ストアに値を get
および set
でき、データレイヤーをリセットする方法も提供します。
Get
抽象データモデルの get
関数を使用することで、set
された値を取得できます。
window.dataLayer.push(function() {
const existingTime = this.get('time');
if (existingTime !== null) {
// Change behavior based on whether or not this value exists...
} else {
// ...
}
})
Set
抽象データモデルの set
関数を使用することで、get
を介して取得される値を設定できます。
window.dataLayer.push(function() {
this.set('time', new Date());
})
Reset
抽象データモデルの reset
関数を使用することで、データレイヤーのデータをリセットできます。これは、データレイヤーのサイズが時間の経過とともに増加し続ける、長期間使用されるページで最も役立ちます。データレイヤーをリセットするには、次のコードを使用します。
window.dataLayer.push(function() {
this.reset();
})