oinume journal

Scratchpad of what I learned

Google Analyticsを携帯サイトで利用するためのGA4K 1.1.0にバグ?

WordPressをモバイル対応させるプラグインKtai StyleとGoogle Analyticsでのアクセス解析Google Analyticsを携帯サイトで利用するためのライブラリGA4Kを導入したと書きましたが、ちょっと挙動があやしかったので一時的に使用をやめていました。(GA4Kのバージョンは1.1.0)

 

というのも、どうやらクローラーのアクセスもカウントしている節があるのです。

google-analytics-mobile-docomo

具体的には、Google Analytics上で↑のようなDoCoMoからのアクセスがあるのですが、Apacheのログを見ても下記のようなYahoo!のモバイル版クローラーのアクセスしか見当たらないのです。

 

124.83.159.168 - - [01/Feb/2009:18:00:58 +0900] "GET /tech/index.php/archives/156?view=co_post HTTP/1.1" 206 3625 "-" "DoCoMo/2.0 SH902i (compatible; Y!J-SRD/1.0; http://help.yahoo.co.jp/help/jp/search/indexing/indexing-27.html)"

 

 

ちょっとコードを見てみると、GoogleAnalytics/Service/analytics.php L36あたりで

 

//モバイル判定

$send_flg = isMobile($_SERVER['HTTP_USER_AGENT']);

 

みたいなことをやってて、isMobile()の中の処理を見てみると

 

function isMobile($user_agent){

 

$mobile_flg = false;

 

if(eregi(USER_AGENT_PATTERN_DOCOMO, $user_agent)){

//echo("ドコモ");

$mobile_flg = true;

}else if(eregi(USER_AGENT_PATTERN_SOFTBANK, $user_agent)){

...

 

となっていました。USER_AGENT_PATTERN_DOCOMOは残念なことに

 

define('USER_AGENT_PATTERN_DOCOMO', '^DoCoMo');

 

なので、"DoCoMo"という文字列が UserAgent に存在すると、それがクローラーでも集計されてしまうというシナリオのようです。ここまでわかればPHP超初心者の自分でもパッチが作れそうだと思ったのですが、今日は寝不足で力尽きたのでまた次回。

 

2009/2/17追記:http://eos.exbridge.jp/news/show/17 の1.1.1でこの問題は修正されているようです。