Movable TypeでAtomフィードやRSSフィードを静的に生成するとき、最新の指定個数のエントリーしか対象にならないのが面白くないとは思いませんか。
正直に言うと、使い道はよく分からない(苦笑)
ていうか、これ単体で何か画期的なことが出来る…わけではなくて、
これを利用して、何かが出来る…んだと思う。
うーん。
まぁでも興味があったので試してみました。
必要な情報は、例によって、wikiにそろってます。
PaginatedFeed.ja JP – Ogawa Code
ファイルをダウンロードして解凍し、MTディレクトリにアップ。
mt-pfeed.cgiパーミッションを調整。
次にテンプレート>モジュールにて、
指定されたとおりに、テンプレートモジュールを作成。
で、適当なオプションを付けて、
mt-pfeed.cgiにアクセスすると、あら不思議!フィードが生成されます。
(別に不思議じゃないんだけど)
注意点。
wiki内で例示されているテンプレートが、
MovableType3.3対応のもののため、3.2以前で、これをこのままコピペするとはまります。
テンプレート例内の、
『<MTEntryIfTagged>?</MTEntryIfTagged>』
を削除することで、3.2でもきちんと動きます。
で、これ、どうやって使ったらいいのかなぁ…
発想として面白いんだけど、活用の仕方が僕には(汗)
一応、OpenSourceなんかも覗いてみたけど。
ちょっとつかめない。
教えてエロイ人。
■ 追記
OpenSearch とは オープンサーチつまり、あれか。
検索結果をRSS(XML)で出力するってことか。
部分的な切り出しも、言ってみれば、検索ではあるわな。確かに。
部分的なRSSの有効利用が、今の僕には思いつかなかった、というだけであって、
それはopensearch云々とはあんまり関係のない話か。
タイトルとか、テキストとかをオプションで指定できると、
なんだか凄い便利な気がするんだけど、重くなりすぎるのかな。やっぱり。
■ 追記(その2 : 10/30)
Ogawaさんの書かれていた補足エントリを読んで。なるほどねーopensearchを調べてるときに、フィードURLは、GETリクエストを受け取るとフィード(=機械的に操作可能なブログのメタ情報)をレスポンスとして返す「Web API」になっています。(中略)そう考えると、ただ最新のN件のエントリーを取り出せるだけでは、Web APIとしてはあまりにもしょぼくね?と思えてくるはずです(中略)GData APIなみの機能を実現することは当面無理だとしても、全エントリーとメタ情報を取得できるようにすることは難しくありません。そういうわけで、それを実現したのがPaginatedFeedなのです。
ぼんやりと思ってたことが、これでようやくはっきりしました。
つまり、何で僕が『活用法わかんね』と言ってたかといえば、
要はこのプログラムは、『前段階』であって、
Opensearchの説明にもあるとおり、これらを例えば検索エンジンで活用するためには、
・検索結果をXMLフォーマットで提供するための「OpenSearchRSS」
・サービスを特定するためのXMLファイルである「OpenSearch Description Documents」
・OpenSearchを表示するためのWebサイトやツールである「OpenSearch Aggregators」
の3つが必要であり、
要は、このプログラムで実現されるフィードを、
『OpenSearchRSS』として活用して、それを、出力できるAggregatorが必要だと。
で、優秀なAggregatorであれば、
例えば検索エンジン的な、目に見える形でのサービス実装も可能である、と。
(検索結果をRSSにしたいなら、ご紹介のヤツをと言うことか)
そういうことかな?
確かに既存のフィードは、WebAPIという視点で見れば、
利用者の出来ることが限られているという面があるわな。
とても、DBと繋がっているとは思えない、静的テキスト並みの状態。
仮に、他のAPIがそんなだったら不便きわまりないもんな。
活用方法は横に置いておいて、
まずは、フィードの意義と言う点で、意義深いと言うことが分かりました。
ふむ。