MTプラグインのStatWatchをFeedburner.jpに対応させてみる

Feedburner.jpを使い始めたので、StatWatchも.jpに対応させてみる。

StatWatch自体も1.2にバージョンがあがっていたので、これをアップデートしてみる。MTプラグインなので、そのまま上書き。見た目がちょっと修正されてる模様。1.1では"Top Pages This Week"に空欄が表示されたりしてたけど、1.2ではそこらはfixされたっぽい。
見た目はいいけど、フィードレポートの"Subscribers"が表示されてないのはなんでだ?.comから.jpにかえたからっぽいし、.jp用のAPIに対応させないといけないのでソースを見てみる。

表示制御は、lib/StatWatch.pmのgetFeedStatsメソッドから返ってくる"has_feed"っていうフラグが鍵らしい。で、has_feedを1(ON)にするにはBLOGトップのHTMLヘッダからlink要素を探して、そのhref属性値の先頭28文字が"http://feed.feedburner.com/"とイコールでないといけないらしい。なので、先頭27文字が"http://feeds.feedburner.jp/"とイコールになったらという条件に変更。それで、その下の方にawarenessAPIのURLが書かれていて、それも.com用なので.jpに変更。とりあえず、これだけ修正して再度StatWatchのレポート画面にアクセス。無事、表示される事を確認。StatWatchはC.C.らしいので、手元のソースを修正するだけなら問題はないよね…?

ここで、修正とかバージョンアップとかする前に確認して疑問だったのが、.jpにあるawarenessAPIのドキュメントが.comのものを和訳しただけだった事。.jpにして出力される事が確認できたから、多分.jpに置き換えればいいんだろうけど、ちょっと混乱。


2006/02/04 追記
オリジナル(v1.2)との"diff -u"をとってみた。
--- StatWatch.pm.orig   2005-11-09 06:27:54.000000000 +0900
+++ StatWatch.pm        2006-02-04 01:20:32.000000000 +0900
@@ -513,7 +513,7 @@
     for my $link (@{ $blog_response->headers->{link} }) {
         my @link_bits = split(/;/,$link);
         chop(my $url = substr($link_bits[0],1));
-        if (substr($url,0,28) eq "http://feeds.feedburner.com/") {
+        if (substr($url,0,27) eq "http://feeds.feedburner.jp/") {
             $feed_url = $url;
             last;
         }
@@ -522,7 +522,7 @@
     my ($feed_subscribers,$feed_subscribers_bg,$has_feed,$feed_average,$feed_permit);
     if ($feed_url) {        
         my $feed_dates = usableDate("feedburner");
-        my $feed_average_request = HTTP::Request->new(GET => "http://api.feedburner.com/awareness/1.0/GetFeedData?uri=$feed_url&dates=$feed_dates");
+        my $feed_average_request = HTTP::Request->new(GET => "http://api.feedburner.jp/awareness/1.0/GetFeedData?uri=$feed_url&dates=$feed_dates");
         my $feed_average_response = $user_agent->request($feed_average_request);
 
         use XML::Simple;
プロフィール

このブログ記事について

このページは、koshigoeが2006年2月 4日 01:31に書いたブログ記事です。

ひとつ前のブログ記事は「del.icio.us post on 2006-02-02」です。

次のブログ記事は「del.icio.us post on 2006-02-03」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。