Google Analyticsのウェブテストをサブドメインで行う方法
Google Analyticsのウェブテストをサブドメイン間で行う、またはサブドメイン用のトラッキングコードを使用しつつウェブテストを行う際は、普通にウェブテスト用コードとトラッキングコードを設置しても、うまくデータを取得できない模様。
正常に動作させるためには、ウェブテスト用コードとGoogleアナリティクス トラッキングコードに若干の追加・修正を行う必要があります。
ウェブテスト用コードに修正を加える
オリジナルページに設置するウェブテスト用コードの直前に、次のコードを追加します。
<script> _udn = "example.com"; </script>
追加後のウェブテスト用コードは以下のようになります。
<script> _udn = "example.com"; </script> <!-- Google Analytics Content Experiment code --> <script>function utmx_section(){}function utmx(){}(function(){var k='XXXXXXXX-X',d=document,l=d.location,c=d.cookie; if(l.search.indexOf('utm_expid='+k)>0)return; function f(n){if(c){var i=c.indexOf(n+'=');if(i>-1){var j=c. indexOf(';',i);return escape(c.substring(i+n.length+1,j<0?c. length:j))}}}var x=f('__utmx'),xx=f('__utmxx'),h=l.hash;d.write( '<sc'+'ript src="'+'http'+(l.protocol=='https:'?'s://ssl': '://www')+'.google-analytics.com/ga_exp.js?'+'utmxkey='+k+ '&utmx='+(x?x:'')+'&utmxx='+(xx?xx:'')+'&utmxtime='+new Date(). valueOf()+(h?'&utmxhash='+escape(h.substr(1)):'')+ '" type="text/javascript" charset="utf-8"><\/sc'+'ript>')})(); </script><script>utmx('url','A/B');</script> <!-- End of Google Analytics Content Experiment code -->
トラッキングコードに修正を加える
サブドメイン間をトラッキングできるように、サイトのすべてのページのGoogleアナリティクス トラッキングコードに _setDomainNameメソッドを追加します。
修正後のトラッキングスクリプトは、以下のようになります。
<script type="text/javascript"> var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-XXXXXXXX-X']); _gaq.push(['_setDomainName', 'example.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); })(); </script>ウェブテスト用コードの _udn の値は、トラッキングコードの _setDomainName の値と常に一致している必要があります。
つまり、上のサンプルで言えば example.com の部分ですね^^b
問題なく設置されていれば、テストの確認ページのエラーも消え、そのうちデータが落ちてくるはずです。
サブドメインでウェブテストがうまく動いていない人は、一度お試しあれ!
Akane Fujima liked this on Facebook.
Hide Tanaka liked this on Facebook.