2005/03/09 水
サイト外へのクリック追跡サービス「MyBlogLog」を導入&解析
数日前に激務の現実逃避で作ろうと思っていたサービスがすでにあってちょっとびっくり、かつ、がっかり、かつ、手間が省けました(笑) 「MyBlogLog」は、自分のサイト以外のどのリンクをクリックしたかを集計してくれるサービスです。うっかり未読をためてしまって最近読んでなかった百式で紹介されているのを blog.bulknews.net 経由で知りました(^^;
MyBlogLogでは、あなたのブログの読者が、あなたのサイト以外のどのリンクをクリックしたか、ランキング表示してくれる。つまりあなたが紹介した他のサイト、もしくは他のサイトの記事が、どれだか読者の興味をひいたのかが一目瞭然なのである。
先週、Ajax で何か実用的なアプリ作れないかなぁ、と現実逃避していたときにふと思いついたのが「onClick のトラップと XMLHttpRequest を使ってページ上の全クリックをトラッキングできるのでは?」というモノでした。「外部リンクのクリックが監視できるとうれしいかも。でも忍者TOOLSとかですでに提供されてるんだろうな・・・。あれ、ないや。お、作ろうかな・・・。んー、できそうだけど、統計画面どうしようかなー。」というところまでいってめんどくさくなってやめたんですが(笑)、その数日後に同等のサービスに出会えるとは! シンクロニシティ?
で、僕は同じことを XMLHttpRequest でやろうとしていたんですが、これだと JavaScript のアクセス制限の関係で自分のサーバ内でしか動かないんですよね。じゃあ MyBlogLog はどうやって各サイトに公開してんだろう、と JavaScript ソースを覗こうと思ったら、やっぱりソースを読まれないように制御してました。ちょこざいな。でも読めないわけはないので、ごにょごにょやって覗いてみると・・・。
おーなるほど。サーバへの通知に Image を使ってるんですね。JavaScript の実装状況に依存されなさそうだし、リダイレクトをかます必要もないし、なかなかいい手ですね。HTML レベルではよく使われる手法ですが、JavaScript でこうやって使うのは思いつきませんでした。引き出しが増えた(^^
JavaScript ソースを読み込んだ時点で元ページの URL や UserAgent 名も送信しているので、簡単なページビューの統計もとれるのではないでしょうか(と思ったら表示されてた)。クリック時には、クリックされたリンクの href(フォームの場合は action 先)とリンクされた文字列(フォームの場合はボタンラベル)と時間が送られているようです(もちろんユーザIDも)。元ページの URL は送っていませんでした。僕が考えていたのは、そのリンクが貼られている元ページの URL も送信して、「どのページのどのリンクが押されたか」をトラッキングするモノだったのですが、リンク文字列がユニークだったらその代わりになりますね。
というわけで、さっそく当サイトでも導入してみました。結果がすぐ反映されるのはすばらしいですね。これは簡単かつ便利なので、アフィリエイトサイトを中心にかなりのサイトで導入されるのではないでしょうか。そして今後「どこのサイトがどういう文字列で自分のサイトにリンクを貼っているか」とかが見られるようになったら面白そうです。いろいろ問題がありそうですが(^^
■追記
リアルタイム集計はPro(有料)の機能で、いまは試用期間だから使えているようです。無料版は集計が日単位で、リストもTOP10までのようです。むー、とてもいいサービスなので有料でもよいのですが、有料版でも機能的にちょっと足りないし、ソース改造して自前で用意しようかな・・・。
あとこれはしようがないのですが、クリックしてからページがロードされるまで、若干ウェイト(ソース上では900msec)をかけられているのが気になるといえば気になるかも・・・。ページ遷移前にデータの送信時間を確保するためには、やっぱりこうするしかないのかな?
Excerpt: いろいろなブログにトラバでお邪魔し、 その後アクセス解析をして、気がついたことがありました。 来訪者からのトラックバック、コメントが見やすい位置にあるブログからは、 どうやら人が流れて来やすいようです。
Weblog: ミズタマのチチ
Tracked: 2005年3月19日 01:06
Excerpt: 橋本大也の“帰ってきた”アクセス向上委員会 #005 〓独特なアクセス解析サービ...
Weblog: ケタンケタン君
Tracked: 2007年7月 9日 09:02








