事務局コダマです。
mapmag.jpの人気コンテンツ funride MapNavi! をRSS2.0に対応させてみました。
MovableType(MT)などのブログだと自動的に生成してくれるんですが、普通のWebサイト(ホームページ)だと自分で作る必要があります。
RSS1.0の構文についてはkanzaki.comに詳しい日本語資料がありました。
が、funride MapNavi!はテキストエディタで編集している都合上、構文がシンプルなRSS2.0にのみ対応する事にしました。RSS2.0はまとまった日本語訳を見つけられなかったので本家の英文仕様とググった結果を見比べながらなんとなくコーディング。
#と、ここまで書いて再度検索したらRSS 2.0 Notesというサイトで詳しい説明がありました。:-o
RSS構文チェックはfeedAnalyzerがメジャーみたいです。手打ち派は公開前にチェックしておくと安心ですね。
■参考:
・funride MapNavi! で使っているRDFファイルのソース(サンプル)
ファイル名:funride.rdf
<?xml version="1.0" encoding="Shift_JIS"?>
<rss version="2.0">
<channel>
<title>funride MapNavi!</title>
<link>http://mapmag.jp/funride/</link>
<description>自転車雑誌funrideに掲載されたコースがネットで動く!</description>
<language>ja</language>
<item>
<title>What's New</title>
<link>http://mapmag.jp/funride/</link>
<description>RSSに対応しました。</description>
<pubDate>Fri, 11 Jan 2008 09:57:00 +0900</pubDate>
</item>
<item>
<title>funride Pickup!1月号</title>
<link>http://mapmag.jp/funride/200801/map/index.html</link>
<description>funride1月号(12月20日発売)のツーリングコース4点を公開!</description>
<pubDate>Tue, 16 Dec 2007 09:30:00 +0900</pubDate>
</item>
<item>
<title>funride Pickup!12月号</title>
<link>http://mapmag.jp/funride/200711/map/index.html</link>
<description>funride12月号(11月20日発売)のツーリングコース4点を公開!</description>
<pubDate>Tue, 16 Dec 2007 09:30:00 +0900</pubDate>
</item>
</channel>
</rss>
■解説(簡単ですが)
先頭から languageタグまでは自分のサイト(いわゆるホームページ)の情報です。HTMLとほぼ同じなので説明は省略。
次の item ブロックからがRSS更新フィードで表示される更新情報になります。
<title>funride Pickup!1月号</title>
更新されたページのタイトルです。ブログならエントリのタイトルに相当します。
<link>http://mapmag.jp/funride/200801/map/index.html</link>
更新されたページのアドレスです。
<description>funride1月号(12月20日発売)のツーリングコース4点を公開!</description>
更新内容の説明です。ブログだとエントリの内容がそのまま出てくるんでしょうけど、Webサイトでそれをやるといちいち面倒なので更新内容だけシンプルに書いています。
<pubDate>Tue, 16 Dec 2007 09:30:00 +0900</pubDate>
更新日です。XMLの仕様上、厳格な構文チェックが入るのできちんと英文フォーマットになってないとまずいみたいです。曜日、月は先頭が大文字の3文字省略形、時間は日本時間(+0900を追加)で記入します。
■Webページへの組み込み方
上記の内容で xxx.rdf という名前でサーバーにアップロードします。
あとはサイトのトップページのindex.htmlにあるheadタグの中にRDFファイルへのリンクを設置すればOKです。
例:
<link href="http://アップロードした場所/XXX.rdf" rel="alternate" type="application/rss+xml" title="RSS News Feed"/>>