3

アカウントに 2 つの Google アナリティクス プロファイルがあります。1 つは、プロパティ ID が UA-XXXXXXXX-1 の運用アカウント用です。2 番目のプロファイルはテスト用のステージング アカウント用で、プロパティ ID は UA_XXXXXXXX-2 です。

タグ マネージャーでは、URL に「mydomain.com」が含まれている場合は「-1」タグが発行され、URL に「mydomain.it」が含まれている場合は「-2」タグが発行されます。

この設定での GA タグの発火は正常に機能します。本番環境とは別のステージング データがあり、基本的な GA ページビューをテストできます。

今必要なのは、イベントを分離する機能です。現在、各イベント トラッキングの前に setAccount を呼び出しています (1 回の呼び出しで実行できることはわかっています)。

_gaq.push(['_setAccount', 'UA-XXXXXXXX-1']);
_gaq.push(['_trackEvent', 'Videos', 'Play', 'Gone With the Wind']);

私がやりたいのは、_setAccount メソッドを呼び出して、URL に応じてプロパティ ID を設定する Google タグ マネージャーから値を動的に渡すことです。

タグ マネージャーのルールに基づいてアカウントを設定できるように、このようなこと (またはそれ以上のこと) を行う方法はありますか?

_gaq.push(['_setAccount', [Tag Manager Property ID] ]);

アドバイス/ヘルプをいただければ幸いです。

ありがとうございました!

4

1 に答える 1

2

IMO がタグ マネージャーから Web サイトにデータを渡すことは、すべての実際的な問題は別として、非同期ローディング コードを持つ目的を完全に無効にします。

メソッドをスタックに「プッシュ」して、コードが将来の未定の時点でロードされたときに処理できるようにします。コードからアカウント ID を取得したい場合は、ロードされるまで待たなければならないため、非同期ロードのすべての利点が失われます。

私が知る限り(タグマネージャーをまだ広範囲に使用していません)、正しい方法はイベントデータを「データレイヤー」変数にプッシュすることです:

dataLayer.push({'myevent': 'mylabel'});

タグマネージャーを介してデプロイされたコードで変数(dataLayer.myeventなど)を使用します(ドメイン固有のコードで実際のイベント追跡を行います)。

これについては、https ://developers.google.com/tag-manager/devguide で説明されています。

実際には、タグ マネージャーに Google アナリティクスのイベント トラッキング テンプレートがあります。イベント値については、新しいマクロを作成して dataLayer 変数に設定できます。次に、ドメイン固有のルールを追加すると、すべての設定が完了します。

于 2012-11-13T08:22:50.537 に答える