WordPressでGoogle Analyticsのイベントトラッキングを利用しようとして少しハマったので記録しておきます。
発端はメールフォームを設置するプラグイン「Contact Form7」の送信完了イベントをGAに送信しようとして、うまくいかなかったことでした。
イベントが送信されないだけでなく、「Contact Form7」の送信完了メッセージも出ていなかったので、最初は「Contact Form7」のスクリプトでコンフリクトが起きていると思っていました。
(以前他のブログでコンフリクトが起きたことがあったので)
そこでJavascriptを使用しているプラグインを全て止めてみたりしましたが、解決しません。
ちょっと困ってしまいましたが、ブラウザのコンソールをよく見てみると
Reference Error: ga is not found
というエラーが出ています。
これはどうもGAのタグの埋め込み等に使っているプラグイン「google analytics by yoast」の方に問題がありそうだということで、今度は「wordpress yoast ga イベント」等で検索をかけてみると、下記のブログ記事が見つかりました。
WordPress SEO by Yoastでイベントトラッキングが使えない時
http://15g.jp/wordpress-seo-by-yoast%E3%81%A7%E3%82%A4%E3%83%99%E3%83%B3%E3%83%88%E3%83%88%E3%83%A9%E3%83%83%E3%82%AD%E3%83%B3%E3%82%B0ga%E3%81%8C%E4%BD%BF%E3%81%88%E3%81%AA%E3%81%84%E6%99%82/
Contact Form7の問い合わせをGoogle Analyticsでトラックできなかった原因と解決法
http://locatimefree.com/contact-form7-google-analytics-event-tracking-problem-solution/
上記の記事に全て書いてありますが、結論としてはプラグイン「google analytics by yoast」を使っていて、GAにイベントを送信したい場合には、GoogleAnalyticsのリファレンスにあるように
ga('send', 'event', 'category', 'action');
と書くのではなく
__gaTracker('send', 'event', 'category', 'action');
と書く必要があるようです。
上記のブログ記事に辿り着くまでに少し時間がかかったので、備忘録として残しておきます。