2007年6月5日火曜日

FeedCreator.class.phpを使いこなすポイント

 以前PHPで簡単にRSS/Atomフィードを生成FeedCreator.class.phpについて少し書いたが、久し振りにまたこのPHPをいじった。以前は気付かなかったカスタマイズポイントもあるので、改めてまとめてみる。(以下の記述は現時点の最新版ver.1.7.2についての記述。)

  1. 文字コード
    PHP(FeedCreator.class.php)を使ったRSSの生成が参考になる。UTF-8ならたぶん変更なしでいけると思う。
    (2007/10/12 追記: フィードの種類により文字コードが決まってた。AtomフィードはUTF-8だからUTF-8ならそのままでOK。他のフィードは変更が必要。いっそclassをextendsするのも良いかも。)

  2. エントリの日時
    159行目のTIME_ZONEの設定を変える。通常は""にすればいい。セットする側のロジックでは、セットする日時の形式としてUnixタイムスタンプ、RFC-822形式(例: Mon, 15 Aug 05 15:52:01 +0000)、ISO-8601形式(例: 2005-08-15T15:52:01+0000)が使える。

  3. クライアントキャッシュ期限
    635行目のコメントアウトを外すと、クライアント(Webブラウザ)側のキャッシュが有効になる。サーバ側のキャッシュ期限と同じ日時になるので、負荷を考えるならクライアントでもキャッシュをさせた方が良い。

  4. Atomの場合のHTMLの挿入
    Atomフィードの本文(?)にHTMLを記述する方法に書いたように、Atomフィードの場合は本文にHTMLを入れたい場合はそのままではダメ。1143行目のsummaryタグにtype属性で"html"等の指定が必要。詳細はAtomフィードの本文(?)にHTMLを記述する方法参照。

 久し振りに触れてみて思ったのは、このPHPってよく作りこまれてるなぁということ。それだけに設定部分を分かりやすくしてファサードを絞ってないのが惜しい。

関連記事:
 RSS/Atomフィードを生成したりSitemapを作成するPHPライブラリ

0 件のコメント:

ブログ アーカイブ

tags