ページの作成や編集にはユーザ登録が必要です。
RSSプラグインのリーダー部分の拡張
- 投稿者: Goo
- カテゴリ: プラグイン要望
- 優先度: 低
- 状態: 完了
- 日時: 2006年05月01日 21時20分42秒
内容
- 概要
- 標準プラグインのRSSリーダーの機能が若干物足りない部分があるので機能拡張してほしい
標準プラグインの主な機能
- RSS0.91,RSS1.0,RSS2.0対応
- 外部URLからRSSを取得してキャッシュする。キャッシュは1時間保持される(時間の変更は出来ない)
- RSSからTitle,Link,Dateを取得する
- 文字コードを全てEUCにして出力する
- 全てのアイテムを出力する(件数指定出来ない)
要望
- (高)Descriptionを表示出来るようにしてほしい。出来ればDescriptonの最初100文字のみ表示するというような文字数制限も入れられるように。
- (高)出力するアイテム数を任意に変更出来るように。
- (中)ATOMへの対応。
- (低)キャッシュ時間を任意に変更出来るように。
問題点らしきもの
- 標準プラグインだとtitle→link→dateの順にアイテムから切り取って行くが、この順番通りではないRSSもあって、うまく表示出来ないのもあった
- ATOMだと表示できない
- Descriptonは単純に抜き出せば良い訳では無いらしい。CDATAのカットが必要な場合もある。
<description><![CDATA[ ・・・・・・・ ・・・・・・・ ]]></description>
CDATAの中身はXMLで書かれているためにタグの除去も必要なようだ。
参考URL
- http://www.kanzaki.com/docs/sw/rss.html#rss10-tree
- http://www.futomi.com/lecture/japanese/rss10.html
- http://www.futomi.com/lecture/japanese/rss20.html
- http://www.futomi.com/lecture/japanese/rfc4287.html
- http://www.witha.jp/Atom/RSS-and-Atom.html
- http://ja.wikipedia.org/wiki/RSS
その他
- 試しに書いてみました。こんな感じでいいのかな?
- 元々は自サイトがWikiのみで構成されている訳ではなく外部のCGIを使用しているため、それらをWikiにうまく組み合わせられないかということでDescription付きのRSSがほしいかなと思った訳です。
- どちらかというとプログラムの問題というより、RSSの仕様を良く知らないといけない問題かなと思うので、ちょっとここにふさわしくないかも。
- RSSの仕様はもう少し調べてみることにします。
メモ
RSS1.0
- 構成
<channel> </channel> <item> <title> <link> <description> </item>
- 判別
xmlns="http://purl.org/rss/1.0/
RSS1.0 DublinCore
- http://web.resource.org/rss/1.0/modules/dc/ (追記:2006-07-24 by A_M)
- 構成
<channel> </channel> <item> <title> <link> <dc:description> </item>
RSS1.0 Syndication
- http://web.resource.org/rss/1.0/modules/syndication/ (追記:2006-07-24 / A_M)
- 構成
<channel> </channel> <item> <title> <link> <description> </item>
RSS1.0 Content
- http://purl.org/rss/1.0/modules/content/ (追記:2006-07-24 / A_M)
- 構成
<channel> </channel> <item> <title> <link> <content:encoded>??? </item>
RSS2.0
- 構成
<channel> <item> <title> <link> <description> </item> </channel>
ATOM
- 構成
<feed> <entry> <title> <link> <summary> or <content> </entry> </feed>
コメント
- PurePerlモジュールXML::TreePPを活用して、上記「標準プラグインの主な機能」の1,3,4、及び、「要望」の1,3を実験中ですが、XML-DOMのノードに指定される属性など詳細が確認できれば実現できそうです。時間が取れましたら、作業を進めてみたいと思います。 - A_M (2006年07月16日 08時23分32秒)
- RSS1.0 モジュールによる拡張について、調べてみました。RSS1.0を拡張する意味で定められたものらしく、従来のノードを含めて記述されるのが扱いやすいRSSのモデルのようです。Syndicationは「フィードの更新予定日時を含める」拡張、Contentは「(X)HTMLコンテンツを含める」拡張ということで、DoublinCoreと併用されているようです。 - A_M (2006年07月24日 21時40分21秒)
- BugTrack-plugin/325に投稿しました。試験期間として3ヶ月ほど頂きましたが、ご要望のものに近づけたと思います。 - A_M (2006年11月22日 00時54分22秒)
最終更新時間:2008年08月25日 03時42分56秒