情報科学屋さんを目指す人のメモ

方法・手順・解説を書き残すブログ。私と同じことを繰り返さずに済むように。

WordPress+Google Analyticsで自分を集計対象から除外する方法メモ

Google Analytics (22) WordPress (80)

WordPressを使っているブログで、そのブログにログイン中のユーザを、Google Analyticsの集計の対象外にする方法についてメモ。

背景

今まで、各ブラウザ用のGoogle Analyticsオプトアウトプラグイン(Chromeなら「Google Analytics オプトアウト アドオン」)を使って、除外していました。しかし、このプラグインがChrome不調の原因かも知れない、と考えたら、WordPress側で対処しておいた方がいいな、と思ったので、WordPress側で工夫してGoogle Analyticsのコードを実行しないようにしました。

方法

Google Analytics用のコードは、本来こんな感じです。

<script type="text/javascript">
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-...']);
  _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>

ヘッダあたりに書かれているはずです。

これを、WordPressにログイン中のユーザには表示(出力)しないようにします。

なので、前にも紹介したis_user_logged_inを使って、非表示にしてしまいます。

<?php if ( !is_user_logged_in() ) : ?>
<script type="text/javascript">
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-....']);
  _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>
<?php endif; ?>

これで、自分のアクセスが、Google Analyticsに影響を与えないようになります(ログアウトしていたらもちろんダメ)。

※コード中の「UA-...」の部分は自分のものに書き換えてください。

コメント(0)

新しいコメントを投稿