2005年01月07日

ブログの更新記録

さて、だいぶ間が空いてしまったがトップページのブログの更新情報に関してだ。自分なりに相当苦労したのでやや感動気味であったが、そもそも問題はどうやって更新を自動で変更するかだった。こんなときにはググルに限るわけだが、ブログは記事を追加すると自動でその記事がトップに行く。なので実際問題このサイトのようにいくつかのブログを合わせたサイトというのはそう無いだろうし、果たしてどれほどの人がそういうことに興味を持っているのかも分からなかったが、それ以上にどうやって検索するかが問題だった。ただ自分のHPを持っている人でブログの更新状態をサイトのトップページに表示したいと思っている人が結構いるようで、これに関しては正直驚いたりもしたのだが、それはあくまで検索した上での結果論である。最初は何を検索すればいいのかも分からなかった次第。そんなわけでブログ、自動更新、更新履歴、新着とかいろいろキーワードを当てはめながら探し回っていたんだがなかなかヒットしない。そこでオヤジは無い頭を使って考えた。

もともとブログにはトラックバックなどの機能が備わっているから、それを利用してトップページをトラックバックセンターのようにすれば確かに更新は出来るのだろうが、そうすると記事を書いた人が一々トラックバックを送信しなければならず、これは自分にとっても面倒なことだ。そこでPINGサーバのように送られてきた情報をトップに反映させられれば余計な仕事をせずに反映させられるかとも思ったが、PINGに含まれている情報が少なく、サーバ側でPINGを受け取ったらあらためてその情報を確認するためにアップされたサーバまで取りにいかなくてならないとか(この辺は非常にいい加減なのだが)、いずれにしろこれまたそう簡単では無さそうだ。そんなわけでどうすれば自分が望むような状態にできるだろうかと考えたわけだ。その辺りが知識の無い素人の苦労するところである。ただ日記CGIからわざわざブログにしたからにはそれなりにメリットが無いと寂しいというのもあり、闇雲に探しながら相当な時間を費やした結果、そのうちRSSというものに出くわした。実は私だけだいぶ以前にブラウザでも読み取れるようにしてあったのだが、このブログ(MOVABLE TYPE)だと右下の方にあるSyndicate this site (XML)と書かれているものがこれにあたる。他の人は特に設定していないと、いきなりダウンロードの窓が出て驚いたに違いない。

これを利用してブログの内容を読み取るRSSリーダーというブラウザともメーラーとも違うものがあるのだが、それを応用してトップに反映させるプログラムが公開されている。そもそもそのRSSリーダーというのを個人個人がインストすれば、わざわざブログを見るためにブラウザを立ち上げてHPまで見に行く必要は無いわけだが、そうするとこちらとしてはサイトを運営している意味が無くなる。ブログサイトではなくてあくまでもHPという感覚だから、見に来てもらわないのは寂しいぞというわけだ。

ただそのRSSを利用すると一口に言ってもこれまたそれをページに埋め込むのも一苦労で、CGIを使ったものがエクスリアではうまく動作せず、PHPのサイトにも似たようなプログラムを見つけたのだが、これまたうまくRSSを取得してくれない。ただ結果としては結局PHPを利用することになったわけだが、こちらはPHPの知識など持ち合わせていないので(未だによくわかっていないのだが)、せめてさわりだけでもということで少し調べる羽目になった。

最初はひとりひとりの更新ではなくて、誰かが何か書いたら、たとえ同じ人が続けて並ぼうともその人の分が更新履歴のように一番上に表示されるようにしたいと思ったのだが、今はむしろこの形の方がいいのではないかと思っている。
パーミッションの設定のせいでキャッシュが働かず、その都度RSSを取得するようになっていたために、特にプレのブログがエラーになって表示が崩れることが多かったが、今はキャッシュを読み込んでいるのでほとんどエラーは無いのではないかと思う。まあライブドアブログは登録者も多いから重たいのは仕方ないんだろうね。そんなわけで一応一時間に一回情報を取りにいってそれをキャッシュに溜めておいたものを読み取るという形になっている(はず?)ので、以前と違って最長1時間の誤差があるかと思う。実はその辺も確かなのかどうか非常に曖昧なのだが。

ちなみに自分の苦労はともかく、知識は共有してなんぼのものだろうと思うので、一応参考にさせてもらったサイトを以下に並べておく。興味がある方は是非あたってみて下さい。


jsRSS++ (大黒屋本舗)

CGIが使えるサーバーの場合。JavaScriptを使用して表示する。ただし広告が自動挿入される無料サーバーではダメっぽい。

MagpieRSS - PHP で使える RSS パーサー。
コメントも含めてここのサイトを一番参考にさせてもらった。だいぶ前の記事なのでMagpieRSSのバージョンが上がっている。このサイトのトップで使っているバージョンは0.52である。0.6までは大丈夫のようだが、最新版を使うとエンコードの関係で全部????で表示されてしまう。ちなみにこの本家のサイトは(MagpieRSS)全部英語なので、日本で純粋培養され英語は敵国の言葉だという教育を受けたおじさんにはちと辛い。

RSS Feed:ZOO!
RSSを取得して整形したテキストを配信。Javascriptを用いて色々なサイトに表示可能。また、デザインはCSSで自由に変更可能。 Javascriptが使えない場合もリンクから整形したページを閲覧可能。上と同じMagpieRSSを利用したサイトだが、スタイルシートと組み合わせて好きなデザインで呼び出すことができる。ただ無料サービスなのでいつ閉鎖されるかわからない、あるいはサーバーがダウンしていると表示部分が空白になってしまう、いくつもヘッドラインを載せた場合に著作権表示がちょっとうるさいetc.と難点もあり。ただCGIもPHPも利用できないサイトではここを利用させてもらうのが手っ取り早いかも。

Docodemo Headline
PHPでHeadlineを表示させる方法。元はやはりMagpieRSS。ヘッドラインの数を変更したい場合のやり方も載っている。ただこのままだと更新日付や時間が載らない。

はじめてのRSSパーサ
上記のサイトで取得したRSSに日付を補完するために探していて見つけたサイト。本当は少しPHPを勉強すればわかることなのだろうとは思うが、せっかく人が苦労して見つけた方法はありがたく利用させてもらわねば。

そういうことで一応RSSに関しては上記のサイトの他にもかなりの数のサイトを見たわけだが、同じ事を他人に強いても仕方ないので、これくらい見ておけばいいだろうといういい加減さのもと紹介させていただいた次第である。

banner_01.gif

Trackback on "ブログの更新記録"

以下1件のトラックバックはこのページのエントリー"ブログの更新記録"を参照しています。

このエントリーのトラックバックURL: 

» 最近は。

  • 2005年01月08日 11:06
  • from So Fine Days

こーゆーのやってます。 週末はプレイできないんだけど・・・ ログインした人が100人以上いるとプレイできないんだけど・・・ でもね、ベアが可愛いの・・・ ... [続きを読む]

Comment on "ブログの更新記録"

今年もどうぞよろしくお願いいたします。。
トラックバックってこんな感じでいいんでしょうか?
いまいち、理解できてませーん(笑)

  •   LC
  • 2005年01月08日 11:09

ああ、随分日が経ってしまったけどトラックバックはこれでいいね。本来は同じような題材を取り上げた時にするのがいいんだろうけど、テストとしてやってもらうのも別に構わない。
それ以上に気をつけないとならないのは、意見の対立することにトラックバックを打つと後出しじゃんけんみたいになって反感を買う恐れがあることだろうな。

  •   ten
  • 2005年01月14日 19:14

Post a Comment

コメントする
(HTMLタグは使用できません)
ブラウザに投稿者情報を登録しますか?(Cookieを使用します。次回書き込み時に便利です。)
  •  
  •