このページの本文へ

フロントエンドエンジニアのblog

有限会社Willさんいん

このページの位置: home タグ: Google アナリティクス

“Google アナリティクス” タグの記事

GADWP の代替プラグイン GAinWP を裏技的に日本語化する

WordPress で Google Analytics のトラッキングコードを挿入し、ダッシュボードにそのレポートを表示できるプラグイン「Google Analytics Dashboard for WP (GADWP)」ですが、2020年2月12日にバージョン 6.0.0 になり、名称も「Google Analytics Dashboard for WP by ExactMetrics (旧 GADWP)」となって、全く別物となってしまいました。

使い勝手が悪いだけでなく、今まで見ることができていた「固定ページ」や「リファラー」などのレポートや集計期間の変更が、有料版でないと見れなくなってしまい、使い物なりません。

しばらく元のバージョンに戻して旧 GADWP のまま使用していましたが、これを再現するプラグイン「GAinWP Google Analytics Integration for WordPress」が公開されていました。

プラグインの説明にも“It was created from the excellent Google Analytics Dashboard for WordPress (GADWP) plugin”(GADWP から作成された)とあるように、設定画面の構成が GADWP と若干異なりますが、機能やダッシュボードのレポート表示は GADWP そのものです。

ただ、日本語化されていないのですが、GADWP が元ってことはこの日本語ファイルが使えるのでは?と思い、試してみたらビンゴでした。

GADWP を削除しても言語ファイルは残っていたので、そのファイル名を GAinWP 用に変更するだけです。

wp-content/languages/plugins/ の中にある、google-analytics-dashboard-for-wp-ja.mogoogle-analytics-dashboard-for-wp-ja.po という2つのファイルをそれぞれ、ga-in-ja.moga-in-ja.po にリネームして完了です。

設定画面の英語の文章が GADWP と一致しない部分は日本語に変換されませんが、少なくともダッシュボードのレポート表示は日本語化されます。

Google アナリティクスをプレビューとテストサーバで除外する

この記事は2015年1月14日に書かれたものです。情報が古い可能性がありますのでご注意ください。

WordPress サイトで Google アナリティクスを導入する場合(トラッキングコードをテーマファイルの header.php などに貼り付ける場合)、そのままでは投稿のプレビュー画面もカウントされてしまいます。また、テストサーバでテーマの編集やプラグインのアップデートを行っている場合も同様にカウントされます。

Google アナリティクス側でフィルタを設定して回避することもできますが、クライアントからトラッキングコードを渡された場合など、Google アナリティクスへのログイン権限がない場合、テーマファイルの中で回避することになります。

プレビュー画面を除外する場合については多くのブログ等で紹介されていますが、WordPressの条件分岐タグ is_user_logged_in() を使います。このタグでログインしているかチェックし、ログインしていない場合にトラッキングコードを適用します。

テストサーバを除外する場合はホーム URL の値を使います。例えばテストサーバの URL に “local” が含まれているのであれば、home_url() にこれが含まれているかをチェックし、含まれていない場合にトラッキングコードを適用します。なお、home_url() の代わりに、php の $_SERVER['REQUEST_URI'] を使ってもよいでしょう。

<?php if ( !is_user_logged_in() && strpos(home_url(), 'local') === false ): ?>
<script>
(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', 'UA-XXXXXXXX-X', 'auto');
ga('send', 'pageview');

</script>
<?php endif; ?>

!is_user_logged_in() && strpos(home_url(), 'local') === false で、ログインしていない、且つ URL に “local” が含まれない場合にトラッキングコードを読み込んでいます。

なお、Google Analytics Dashboard for WP などのプラグインを使用する場合は、プラグインの設定でログイン中を除外することができます。また、テスト環境ではプラグインをインストールしないか無効にすることで回避します。

page top