1

サイトのページをトラッキングして 2 つの Google アナリティクス アカウントに報告することに成功していますが、アウトバウンドリンク トラッキングを取得して、Google アナリティクス アカウントのイベントをトラッキングすることができません (どちらもトラッキングしていません)。recordoutbound リンク機能が機能しない理由はありますか? 以下は私のコードです:

<script type="text/javascript">

  var _gaq = _gaq || [];

_gaq.push(['_setAccount', 'UA-1xxxxxx-x']); 
_gaq.push(['_setDomainName', 'mysite.com']); 
_gaq.push(['_setAllowLinker', true]); 
_gaq.push(['_trackPageview']); 


_gaq.push(['b._setAccount', 'UA-2xxxxxx-x']);
_gaq.push(['b._setDomainName', 'mysite.com']);
_gaq.push(['b._setAllowLinker', true]);
_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);
  })();

function recordOutboundLink(link, category, action) { 
try { 
var onePageTracker = _gat._getTracker("UA-1xxxxxx-x"); 
var twoPageTracker = _gat._getTracker("UA-2xxxxxx-x");
onePageTracker._trackEvent(category, action); 
twoPageTracker._trackEvent(category, action);
setTimeout('document.location = "' + link.href + '"', 100) 
} catch (err) { } 
} 
</script> 
4

2 に答える 2

1

Google の古いアウトバウンドリンク トラッキングの例に基づいたコードを使用しているようですが、いくつかのエラーがありました。

_gaq.push代わりに使用する次のことを試してください。

function recordOutboundLink(link, category, action) { 
  try{
    _gaq.push(['_trackEvent', category,  action]);
    _gaq.push(['b._trackEvent', category,  action]);
  } catch(ignore){};
  setTimeout(function(){document.location.href = link.href;}, 100);
} 
于 2013-04-19T14:15:30.717 に答える
0

それを少し要約することができます...特に、名前を付けているので、追跡オブジェクトを再定義する必要はないと思います(名前は1つだけです、b)。

実際のイベント トラッキングには、ページビューの場合と同じ _gaq.push を使用します (以下を参照)。

また、100% 確実ではありませんが、2 つのトラッカーを同じドメイン名に設定しようとすると衝突が発生する可能性があります... そのシナリオで複数のサブドメインにまたがる追跡の問題に遭遇したことを思い出したようで、プレフィックス 1 をドット。

<script type="text/javascript">
    var _gaq = _gaq || [];
    _gaq.push(['a._setAccount', 'UA-1xxxxxx-x'],
              ['a._setDomainName', 'mysite.com'],
              ['a._setAllowLinker', true],
              ['a._trackPageview'],
              ['b._setAccount', 'UA-2xxxxxx-x'],
              ['b._setDomainName', '.mysite.com'],
              ['b._setAllowLinker', true],
              ['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);
      })();

    function recordOutboundLink(link, category, action) { 
        try { 
            _gaq.push(['a._trackEvent', category, action, link],
                      ['b._trackEvent', category, action, link]); 
            setTimeout('document.location = "' + link.href + '"', 100); 
        } catch (err) { } 
    } 
</script> 
于 2013-04-19T14:15:46.663 に答える