イベント・トラッキングが出来なくなった?!
Google Analyticsで、問い合わせフォームやダウンロードのクリック測定をするのに便利なのが、「バーチャル・ページビュー」や「イベント・トラッキング」です。
Google Analyticsのヘルプには、"pageTracker"を使ってそれぞれ次のように記述するように説明されています。
pageTracker._trackPageview('仮想URL’)
pageTracker._trackEvent('カテゴリ’, 'アクション’, 'ラベル’, '値’)
しかし、Google Analyticsの新しいトラッキングコードである、非同期トラッキングコード(Asynchronous Tracking Code)を使用すると、この"pageTracker"が使えません。
Googleがこっちがオススメだよ!って推奨してるから、トラッキングコードが新しくなってパワーアップしたみたいだから、と無邪気にスニペット(トラッキングコード)の変更だけをすると困ったことになります。。
新しいトラッキングコードでは、"pageTracker"がそのまま使えないため、トラッキングコードだけを変えると、"pageTracker"の部分でjavascriptエラーが発生してしまいます。
エラーコンソールなどでみると「pageTracker is not defined.」と言われちゃいます。最初は、いきなり使えなくなって戸惑ってしまいました。Googleがこっちがオススメだよ!って推奨してるから、じゃあ、ってことで古いものと差替えたのに、"pageTracker"の注意書きやアナウンスなんかは(多分)何もなかったんだもん(見落としかなぁ~)。。未だに、Google Analyticsのヘルプには、"pageTracker"を使えって書いてありますし。
Google Analytics 非同期トラッキングコードでの、イベント・トラッキングの方法
ではどうすればいいか。Google Analyticsの非同期トラッキングコードで、「バーチャル・ページビュー」や「イベント・トラッキング」を使用するには、"pageTracker"に代わって"_gaq.push"を使います。記述の方法は次のようになります。
バーチャルページビュー
_gaq.push(['_trackPageview’,’仮想URL’]イベントトラッキング
_gaq.push(['_trackEvent’,’カテゴリ’,’アクション’,’ラベル’,’値’])
これを、例えばダウンロードボタンをクリックした時に、「バーチャル・ページビュー」と「イベント・トラッキング」の両方を記録するようなリンクのタグはこのようになります。(2011.10.23修正)
<a href="javascript:void(0);" onclick="javascript:_gaq.push(['_trackPageview’,’/download/pdf’]);_gaq.push(['_trackEvent’,’download’,’PDF’]);return false;">ダウンロード</a><a href="ZYX.pdf" onclick="javascript:_gaq.push(['_trackPageview’,’/download/pdf’]);_gaq.push(['_trackEvent’,’download’,’PDF’]);">ダウンロード</a>
この変更、その他カスタム変数などを使っている場合も変更が必要です。
【参考】
非同期スニペットのスタート ガイド – Google Analytics – Google Code
非同期トラッキングの利用ガイド – Google Analytics – Google Code
Google Analytics 非同期トラッキングコード再考 | MOL