Bloglines などの RSS リーダを使っていると、ロゴ画像が表示されるサイトを見かける。また、「more...」や「続きを読む」がある場合、クリックできるようになっているサイトもある。MovableType の RSS テンプレートにこれらの機能を追加する。RSS 1.0 と RSS 2.0 では書式が異なるので注意。
■ ■ ■
RSS 1.0 の場合、サイトのロゴ画像については RSSにサイトのロゴを埋め込む方法 : NDO::Weblog で解説されている。「more...」の追加は RSSリーダーで段落整形させて表示させる方法 : NDO::Weblog の方法に若干手を加えたものである。MovableType の編集画面で「RSS 1.0 Index」テンプレートを編集する。
...
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:admin="http://webns.net/mvcb/"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:cc="http://web.resource.org/cc/"
xmlns="http://purl.org/rss/1.0/"
xml:lang="ja">
...
<dc:language>ja-jp</dc:language>
...
<image rdf:resource="<$MTBlogURL$>mticons/nlogn.gif" />
</channel>
<image rdf:about="<$MTBlogURL$>mticons/nlogn.gif">
<title><$MTBlogName encode_xml="1"$></title>
<link><$MTBlogURL$></link>
<url><$MTBlogURL$>mticons/nlogn.gif</url>
</image>
...
<description><$MTEntryExcerpt encode_xml="1"$></description>
<content:encoded><$MTEntryBody encode_xml="1"$>
<MTEntryIfExtended>
<![CDATA[<p><a href="<$MTEntryPermalink$>#more">more...</a></p>]]>
</MTEntryIfExtended>
</content:encoded>
...
赤色部分がサイトのロゴ画像に関連した部分になる。</channel> の内側と外側に分けて書かなければならない。画像の URL はサイトに合うように変更する必要がる。青色部分が「more...」に関連した部分である。「xmlns:content=...」の行は、「<rdf:RDF>」内にあればよく、順番は関係ない。言語の設定は2箇所ある。「ja-jp」の部分は、簡単に「ja」としてもよい。保存して再構築したら、Feed Validator for Atom and RSS などでチェックしておく。
RSS 2.0 では、サイトのロゴは画像の大きさを指定するようになっている。「<channel>」の考え方も違うようだ。「more...」に関連する記述は RSS 1.0 と同様の書式になる。「RSS 2.0 Index」テンプレートの該当箇所は以下の通り。
...
<rss version="2.0"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:admin="http://webns.net/mvcb/"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
...
<dc:language>ja-jp</dc:language>
...
<admin:generatorAgent rdf:resource="http://www.movabletype.org/?v=<$MTVersion$>" />
<sy:updatePeriod>daily</sy:updatePeriod>
<sy:updateFrequency>1</sy:updateFrequency>
<sy:updateBase>2004-01-01T12:00+09:00</sy:updateBase>
<image>
<url><$MTBlogURL$>mticons/nlogn.gif</url>
<title><$MTBlogName encode_xml="1"$></title>
<link><$MTBlogURL$></link>
<description><$MTBlogDescription remove_html="1" encode_xml="1"$></description>
<width>16</width>
<height>16</height>
</image>
<MTEntries lastn="15">
...
<description><$MTEntryExcerpt remove_html="1" encode_xml="1"$></description>
<content:encoded><$MTEntryBody encode_xml="1"$>
<MTEntryIfExtended>
<![CDATA[<p><a href="<$MTEntryPermalink$>#more">more...</a></p>]]>
</MTEntryIfExtended>
</content:encoded>
<guid isPermaLink="false"><$MTEntryID$>@<$MTBlogURL$></guid>
...
ついでに、ウェブログの更新頻度の設定も見直しておく。このサイトは「日本時間で2004年1月1日の午後0時0分を基準にし、1日に1回更新される」とした。この部分の記述に関しては、hail2u.net - Weblog - Syndicationモジュール に解説がある。仕様書は RDF Site Summary 1.0 Modules: Syndication。言語の設定も確認する。保存して再構築したら、こちらも Feed Validator for Atom and RSS などでチェック。
RSS 1.0 の構文については RSS(RDF Site Summary)によるサイト情報の要約と公開、RSS 2.0 については RSS 2.0 Notes が詳しい。
Posted by n at 2004-10-06 01:39 | Edit | Comments (0) | Trackback(2)