wiki.da!

メモ > 2007-04-17 > とりあえず RSS 2.0 なプラグイン

メモ/2007-04-17/とりあえず RSS 2.0 なプラグイン

Google Webmaster Tools からサイトマップを登録することができますが、登録できるのは身近なところではRSS 2.0かAtom 0.3。

そこでRSS 2.0が欲しかったんですが、ところがKinoWikiのpluginフォルダには RSS10 (RSS 1.0 のみ対応)しかない。というわけで自作しました。うまく検索すれば似たようなプラグイン(or もっとましなやつ)をつくった人はいそうですが、どうも、うまく検索できなかったみたいなんで…。

とはいえPHPコードはRSS10プラグインからいただきました。フォルダごとコピペして、ファイル名(とファイル名をハードコーディングしてある部分と)とテンプレートを変更しただけ。なのでdescription(普通は本文かその抜粋を入れる)が空です。ひどいですね、ええ。ちなみに使用法は(当然ながら)RSS10とほとんど同じ。

RSS 2.0 の仕様はhttp://hail2u.net/documents/rss20notes.htmlを参考にしました、が、適当に当てはめ直しただけですのであっちのURLとこっちのURLを取り違えてる!みたいな可能性もあります。テンプレートはだいぶちがくなるので、それだけは以下に示しておきます(一応ライセンス書いた方がいいのか?まあ、もとのプラグインと同じで)。

<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>{$sitename}</title>
    <link>{$baseurl}</link>
    <description>{$sitename} RecentChanges</description>
    <language>ja</language>
    <pubDate>{$list[0].timestamp
     | date_format:"%Y-%m-%dT%H:%M:%S+09:00"}</pubDate>
    <lastBuildDate>{$list[0].timestamp
     | date_format:"%Y-%m-%dT%H:%M:%S+09:00"}</lastBuildDate>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>

  {foreach from=$list key=key item=item}
    <item>
      <title>{$list[$key].pagename}</title>
      <link>{$list[$key].url}</link>
      <description></description>
      <pubDate>{$list[$key].timestamp
       | date_format:"%Y-%m-%dT%H:%M:%S+09:00"}</pubDate>
      <guid>{$list[$key].url}</guid>
    </item>
  {/foreach}
  </channel>
</rss>

[RSS 2.0 な KinoWiki プラグイン]につづく

つづきを書く

Category: [KinoWiki] - 2007-04-17 04:31:34