0

私たちのサイトでは、iframeコンテンツでのGoogleAnalyticsユーザーアクションを追跡したいと思います。iframeは、別の第3レベルドメインでホストされています。何らかの理由で私のセットアップが機能しません。

状況:iframeで、2つのGoogleトラッカーを使用したいと思います。1つは親サイトからのもので、もう1つはiframe専用です。イベントとVPVも使いたいです。閲覧すると、GAアカウントの「リアルタイムの概要」セクションにページが表示されます。しかし、送信ボタンのクリックに接続されているVPVが表示されません。

また、関数「_setDomainName」がどのように機能し、そこに何があるべきかについてもよくわかりません。これらは別の問題であり、どんな助けでも大歓迎です。

設定:親サイト:

<script type="text/javascript">

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXXX-1']);
  _gaq.push(['_setAllowLinker', true]);
  _gaq.push(['_setDomainName', 'parent.com']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();

$(document).ready(function() {
  var pageTracker = _gat._getTrackerByName();
  var iframe = document.getElementById('myIFrame');
  iframe.src = pageTracker._getLinkerUrl('http://mydomain.iframedomain.net/page.aspx');
});

</script>

Iframeページ:

<script type="text/javascript">

            var _gaq = _gaq || [];
            _gaq.push(['a._setAccount', 'UA-XXXXXX-1']);
            _gaq.push(['a._setDomainName', 'parent.com']);
            _gaq.push(['a._setAllowLinker', true]);
            _gaq.push(['a._trackPageview']);

            /* this is second tracking account */
            _gaq.push(['b._setAccount', 'UA-XXXXXX-2']);
            _gaq.push(['b._setDomainName', 'iframedomain.net']);
            _gaq.push(['b._trackPageview']);

            (function () {
                var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
                ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
                var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
            })();

        </script>

次に、ボタンクリックイベントでこの関数を呼び出します。

             function track() {
                 _gaq.push(['_trackPageview', '/search-retailer-clicked']);
                 _gaq.push(['_trackEvent', 'Search - Event', 'Click - Event', 'Search Retailer Button clicked']); 
             }

私は何が間違っているのですか?

4

1 に答える 1

0

iframe(a._setAccountb._setAccount)で両方のトラッカーに名前を付けましたが、ボタンクリックイベントでは、デフォルトの名前のないトラッカーを使用しています。

その結果、仮想ページビューとイベントは、アカウントが設定されていないトラッカーに送信されます。トラッキングピクセルリクエストを(、、、、またはを介して)見ると、accountIdga_debug.jsが表示されます。firebugchrome developer toolsfiddlerUA-XXXXX-X

あなたはおそらくもっと次のようなものが欲しいでしょう:

function track() {
  _gaq.push(['a._trackPageview', '/search-retailer-clicked']);
  _gaq.push(['a._trackEvent', 'Search - Event', 'Click - Event', 'Search Retailer Button clicked']); 
  _gaq.push(['b._trackPageview', '/search-retailer-clicked']);
  _gaq.push(['b._trackEvent', 'Search - Event', 'Click - Event', 'Search Retailer Button clicked']); 
}
于 2013-01-23T17:47:54.317 に答える