やったこと

webサービスを作るときに考えたことを垂れ流します

SimplicityのテーマでGoogleアナリティクスの「外部リンククリックの解析」ができるようにしてみた

ワードプレスのテーマ「Simplicity」を修正して、Googleアナリティクスで「外部リンクのクリック数」を解析できるようにしてみました。

Googleアナリティクスはデフォルトだと外部リンクのクリック数を調べられないので、これだとお友達のサイトにどれだけアクセスを渡せているのか分からないので、ちょっと不便です。

Googleアナリティクスで外部リンクのクリック数を解析する方法は、以下のようなjavascriptのコードを仕込むというものがあります。

<script type="text/javascript">
jQuery(function(){
  jQuery("a").click(function(e){
    var ahref = jQuery(this).attr('href');
      if (ahref.indexOf("hogehoge.com") != -1 || ahref.indexOf("http") == -1 ){
        ga('send', 'event', '内部リンク', 'クリック', ahref);
      }else{
        ga('send', 'event', '外部リンク', 'クリック', ahref);
      }
  });
});
</script>

このコードをHTML中の「</body>」の直前あたりに入れると、Googleアナリティクス画面の「イベント」の欄で外部リンク(と内部リンク)のクリック数が閲覧できるようになるそうです(コード中の「hogehoge.com」と記述されている箇所は、自分のサイトのドメイン名に置き換えてください)。

※ちなみに上記コードは、最近アップデートされたGoogleアナリティクスの新バージョン「ユニバーサルアナリティクス」を使ってる場合です。旧バージョンを使ってる場合はまた違うコードになるのでご注意ください。



Simplicityのテーマにこのコードを入れる場合は、「analytics.php」の中身をそっくり以下のように入れ替える修正をします。

<?php
if (!is_user_logged_in()) :
?>
<?php if ( get_tracking_id() ): //トラッキングIDが設定されているとき?>
<!-- Google Analytics -->
<script type="text/javascript">
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', '<?php echo esc_html( get_tracking_id() ) ?>', 'auto');
<?php if ( is_analytics_interest() ): //インタレストカテゴリに対応しているとき?>
  ga('require', 'displayfeatures');
<?php endif; //is_analytics_interest?>
  ga('send', 'pageview');
</script>
<!-- /Google Analytics -->
<?php endif; ?>

<?php //以下その他の解析コードなど ?>
<script type="text/javascript">
jQuery(function(){
  jQuery("a").click(function(e){
    var ahref = jQuery(this).attr('href');
      if (ahref.indexOf("hogehoge.com") != -1 || ahref.indexOf("http") == -1 ){
        ga('send', 'event', '内部リンク', 'クリック', ahref);
      }else{
        ga('send', 'event', '外部リンク', 'クリック', ahref);
      }
  });
});
</script>
<?php endif; ?>

「analytics.php」内では旧バージョンのGoogleアナリティクスのコードが使われていたので、中身の処理を全部新バージョンのものに書き換えました。

この修正すれば、Googleアナリティクスの画面で外部リンクのクリック数が見られるようになるはずです。

ちなみにWordpressのキャッシュ系のプラグインを使っている場合は、一旦キャッシュを削除しないと反映されないのでご注意ください。

※あと何度も言いますけども、上記コードは新バージョン「ユニバーサル・アナリティクス」を利用してる場合のものです。旧バージョンを使っている場合はこのコード使えないのでご注意ください。