Adblockカウントプラグインを入れたら全員Adblockユーザになっていた話
Adblockを入れてるブラウザからのアクセス数を調べてみようとWordpressプラグイン「End of Adblock Cycle」を導入したところ、全てのアクセスがAdblockを導入しているという結果になりました。
「そんなアホな」と思いつつ、自分のブラウザでアクセスしても広告ブロックユーザとカウントされてしまう。
別のAdblockユーザカウントプラグインの「Ad Blocking Detector」と入れ替えてみても結果は同じ。
10分ほどの試行錯誤の結果、原因はWordpressプラグインAutoptimizeと判明。
AutoptimizeのJavaScript Optionsで、Optimize JavaScript Codeをオフにすればきちんと動作しました。
実際のAdblock利用者はかなり少なかったです。
JavaScript Optionsのどの項目のどれをいじっても使えるようにはなりません。
Adblock判別系のプラグインを使いたければJavaScript Codeのオプティマイズを切るしかないようです。
Adblock判別系のプラグインとAutoptimizeの相性が悪い理由
Adblock判別系のプラグインとAutoptimizeの相性が悪い理由なんですが、考えてみたら当たり前なんですね。
Adblockの検出には広告っぽく振る舞うJavaScriptを読み込ませて、スクリプトが発火するかどうかで判別しています。
JavaScriptが書き換えられて発火しない時はなんかいじってると判定され、アドブロックユーザーとみなされてしまうわけです。
ちょっとした興味からどの程度のユーザがAdblockを使っているのか知りたくて試しに入れただけなので、つかえなくても構わないのですが、活用したい人にはやっかいかも(プラグインの使っているスクリプトファイルを除外リストに入れれば動くには動く)。
アドブロックの判定方法に興味が湧いたので、簡単にカウントする方法とAdblockしてる人に表示させない手はないかを調べてみました。
アドブロックユーザーをカウントする一番簡単な方法
プラグインを使わずカウントするのにいい記事を見つけました。これだと普通のHTMLページへの導入も楽で、使い勝手がいいです。
原理はシンプル。
アドブロックが作動する条件をりようするだけ。
- ブラックリストに登録されたサイト(広告配信サイト)からのデータを読み込まない。
- “advertisement.js" などの “広告表示スクリプト" っぽい名前のファイルを読み込まない。
- “adspace" などの “広告表示領域" っぽいクラス名が付けられた要素を非表示にする。
all.txt と unblock.txt という二つのファイルと、広告に見せたファイル、それに実行用のファイルを用意するだけとお手軽。
「advertisement」という広告っぽい外部 php ファイルを読み込んで、実行されるどうかで判別します。
all.txtというファイルにはアクセスがあるたびに加算、unblock.txtというファイルにはブラウザが「advertisement.js.php」というスクリプトを読み込むたびに1加える。
all.txtとunblock.txtの差がAdblockブラウザーからのアクセスということになるというわけ。頭いいですね。
この方法なら特定のページの利用状況を調べることができるというメリットがあります。
Adblockしてる人に表示させない簡単な方法
AdBlockを使用している人にページの内容を表示させないだけなら、<body id="advertise">でOK。
アドブロックは advertise という語に反応するのでこれでページ全体が非表示になります。
「Adblockは外してね」というメッセージは表示できないけど、消すだけでよくね?ってことであればこれで解決。
すぐに対策される単純な方法だけど、どのみちいたちごっこになるだけ。むきになっても仕方ないです。
いたちごっこしてでも見たいって人を必死で排除するのも非生産的ですし。
Adblockをカウントしようと思ったわけ
なぜAdblockのユーザ数を調べてみる気になったかというと、ですね。
つい数日前のことなんですが、PCやスマホのようなデジタルデバイスに疎い知人が、「Adblockを入れたら広告が表示されなくて快適」と言っているのを耳にしたためです。
それまでAdblockネタにはさして興味はなかったんですが、「あいつが知ってるくらい浸透してるの?」と驚いたので、自分のサイトで調べてみようと思ったわけです。
2つのサイトでAdblockユーザのカウントをしてみましたが、利用者は5~8%くらいで、使ってる人はそんなに多くないよねという結果でした。
そういうのに疎い利用者が多いサイトだから、ということもあるんですが、広告は見たくない!って人を気にしている暇があったら他のことをするほうが生産的ですね。
表示してでも見てくれている人とそうでない人も、同じように見られるということに不公平感があるにはあります。