私のチームは、私たちが分析するためにGoogleアナリティクスを必要とする一連のツールとページを作成しています。私たちは私たちのチームのためのAnalyticsアカウントを持っています。そこで私たちは良いデータを収集しています。同じウェブサイトで複数のGoogleアナリティクスアカウントを使用する
最近、別のチームのウェブサイトにある別のリポジトリとウェブサイトを組み合わせなければなりませんでした。このため、Googleアナリティクスの分析アカウントへのデータ送信が中止されました。代わりに、データは他のチームのアカウントに送信されます。使用しているフレームワークは、Webサイトのすべてのページに特定のコードを挿入します。
私たちは、代わりに私たちの口座に当社のイベント・データを送信するために好きで、私たちの分析は、彼らからオブジェクトを適切に分離する方法を見つけ出すだろう。以下のコードは、2つの異なるアカウントへの通信を可能にするために変更したいものの例です。どんな助けでも大歓迎です。
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-XXXXXXXX-2', 'auto');
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-YYYYYYYY-2', {'name':'b'});
ga('send', 'event', 'TheirAnalytics', 'TheirEvent');
ga('send', 'event', 'MyAnalytics', 'MyEvent');
これは、名前付きトラッカーを使用する正解です。 – nyuen
この回答をさらに理解しやすくするには、同じ名前の2つのトラッカーオブジェクト(OPの場合はデフォルト名)を作成することはできません。これは、2番目のトラッカーが最初のトラッカーを上書きするだけなのでです。これは少なくとも1つのトラッカーの名前を付ける必要があるため、後者は既存の変数を上書きしないようにするためです(新しい変数を変数に代入すると、既存の変数を上書きします)。新しい値の別の変数)。 –