BlognPlus 用 RSS2.0/Atom0.3/Atom1.0 生成モジュール

BlognPlus に RSS2.0, Atom0.3, Atom1.0 フィードを生成させるようにするモジュールです。

このモジュールで配信されるフィードは「FEED Validator」で正しい文法に基づいて書かれている事を確認しています。

Valid AtomValid RSS

Feed Generator の機能

RSS2.0/Atom0.3/Atom1.0

もともと BlognPlus には RSS1.0 形式のフィードを配信する機能が備わっていますが、このモジュール「Feed Generator」を導入すると RSS2.0 と Atom0.3、そして最新の Atom1.0 フィードも配信できるようになります。

フィードのリンク

ユーザー別・カテゴリー別フィード

ユーザーまたはカテゴリーで絞ったフィードを出力する事が出来ます。

コメント・トラックバック用フィード

記事についたコメントおよびトラックバックのフィードも配信する事が出来ます。

Podcasting(ポッドキャスティング)対応

MP3ファイルへのリンクを自動的に検出し、フィードに反映する事が出来ます(RSS2.0のみ)。
Podcasting 対応のソフト(iTunes 等)にフィードを登録すれば自動的にMP3ファイルを取得、iPod との連携させる事が出来ます。

スタイルシートを適用できる

フィードへのリンクをクリックすると素の XML が表示されてしまいますが、Feed Generator では スタイルシートを適用する事が出来ます。フィードが整形されて出力されるので、ちょっとかっこいいかも。

適用前
適用後

動作例

モジュールを導入する前に、どんな風に動作しているかご覧になりたい場合は、以下のサイトを参考にして下さい。

※ トラックバックをいただいたサイト様に無断でリンクさせていただいています。

動作環境

BlognPlus v2.5.1(テキスト版およびMySQL版)で動作確認しています。PostgreSQL版での動作は未確認です。

Ver1.50 以降は BlognPlus v2.5.0 以前のバージョンには対応していません。モジュールをバージョンアップする前に必ず BlognPlus 本体をアップデートしてください。

ダウンロード

利用規約

  1. このモジュールの所有権は 「nJOY」管理人 CJ にあります。
  2. モジュールを使用して損害が生じても、「nJOY」管理人 CJ は一切の責任を負いかねます。
  3. モジュールの再配布・販売等は一切禁じます。
  4. 利用者個人の責任において改造は自由に行えます。
  5. スクリプト内にあるプログラム名・バージョン名・著作権表示を削除・変更する事は認めません。
  6. 当規約に同意された方のみ、このモジュールを無料で使う事が出来ます。
  7. もしよければ、あなたのブログに「nJOY BLOG」へのリンクをはってやってください。管理人が大変喜び、モジュール作成の励みになります。

Feed Generator」(feedgen.zip, 8kb)

Feed Generator 用 XSL 詰め合わせ

BlognPlus + Feed Generator で出力される RSS2.0/Atom0.3/Atom1.0 フィードに適用できる XSL と CSS を用意しました。
「rss2.xsl」「atom.xsl」「atom1.xsl」「feed.css」を「skin」ディレクトリ下へアップロードして下さい。

XSL 詰め合わせ」(xsl_pack.zip, 5kb)

※ 同梱の「readme.txt」にも一度目を通しておいてください。

インストール方法(BlognPlus v2.5.1 の場合)

  1. ダウンロードした圧縮ファイル(feedgen.zip)を解凍する
  2. 「feedgen」フォルダを BlognPlus ディレクトリ下の「module」にアップロード
  3. 「index.php」に数行書き加える。
  4. スキンファイルに Atom auto-discovery を埋め込む
  5. スキンファイルに RSS2.0, Atom0.3, Atom1.0 へのリンクをはる。

2. ディレクトリ構成

blognplus
   + module
      + feedgen
         - blank.php
         - config.ini (設定ファイル)
         - control.php
         - feeden.php
         - function.php
         - index.html
         - info.php
         - update.php

3. 「index.php」に数行追加

「index.php」250行目辺りに赤い文字列部分を追加。

  1. }elseif ($blogn_get_mode == "rss") {
  2. header("Content-Type: application/xml; charset=UTF-8");
  3. blogn_rss_view($blogn_user);
  4. exit;
  5. }elseif ($blogn_get_mode == "rss2") {
  6. header("Content-Type: application/xml; charset=UTF-8");
  7. feedgen_rss_view($blogn_user);
  8. exit;
  9. }elseif ($blogn_get_mode == "atom") {
  10. header("Content-Type: application/xml; charset=UTF-8");
  11. feedgen_atom_view($blogn_user);
  12. exit;
  13. }elseif ($blogn_get_mode == "atom1") {
  14. header("Content-Type: application/xml; charset=UTF-8");
  15. feedgen_atom_one_view($blogn_user);
  16. exit;
  17. }else{
  18. exit;
  19. }
  20. break;

4. Atom auto-discovery

スキンファイルの<head>〜</head>内に以下のタグを追加。

  1. <link rel="alternate" type="application/atom+xml" href="{HOMELINK}?mode=atom1" />

または

  1. <link rel="alternate" type="application/atom+xml" href="{HOMELINK}?mode=atom" />

5. フィードへのリンク

スキンの適当な場所、例えば RSS1.0 のリンクの下などに以下のタグを追加。

  1. <a href="{HOMELINK}?mode=rss2">RSS 2.0</a>
  2. <a href="{HOMELINK}?mode=atom">Atom 0.3</a>
  3. <a href="{HOMELINK}?mode=atom1">Atom 1.0</a>

パラメーターオプション

ユーザー別フィード

複数ユーザーで管理しているブログでも、ユーザーごとのフィードを配信する事が可能です。
ユーザー別に配信する場合は、アドレスの末尾に「&u=ユーザーID」を追加してください。

例(RSS2.0)

例(Atom0.3)

例(Atom1.0)

カテゴリー別フィード

カテゴリー別に配信する場合は、アドレスの末尾に「&c=カテゴリーID」を追加してください。

例(RSS2.0)

例(Atom0.3)

例(Atom1.0)

コメント用フィード

各フィードのアドレスの末尾に「&f=cmt」をつけると、コメント用フィードを配信します。

トラックバック用フィード

各フィードのアドレスの末尾に「&f=trk」をつけると、トラックバック用フィードを配信します。

Podcasting(ポッドキャスティング)について

記事内にMP3ファイルへのリンクがあると、RSS2.0フィードに自動的に反映されます。

Podcasting の方法

  1. 「初期設定」から「許可するファイルの種類」として mp3 を登録する
  2. 「初期設定」から「アップロード可能ファイルサイズ」を変更する
  3. 「ファイル管理」もしくは記事投稿時の「画像挿入」で MP3 ファイルをサーバーにアップロードする
  4. 「画像挿入」で記事内に MP3 ファイルへのリンクを挿入する
  5. ブログでポッドキャスティング用フィードとして、RSS2.0 の登録を呼びかける

仕様

設定画面

各形式のフィードに対して、スタイルシートを適用するか否か、そして出力する記事/コメント/トラックバックの件数(1〜25件)を個別に設定する事が出来ます。

スタイルシートを使う場合は、各フィード用の XSL ファイルと、共通の CSS ファイル(feed.css)を「skin」ディレクトリ下へアップロードして下さい。

アップグレードの仕方

ver1.32〜1.45 → 1.50

「config.ini」以外のファイルを上書きアップロードしてください。

ver1.00〜1.28 → 1.50

全てのファイルを上書きアップロードしてください。
新たに「config.ini」ファイルが追加されたので、このファイルをアップロード後、パーミッションを 666 等に変更してください。

スタイルシートを使用する場合は、「skin」ディレクトリ下へ必要な XSL と CSS ファイルもアップロードして下さい。

ver1.20 から Atom1.0 に対応したため、「index.php」への記述が増えています。そちらも忘れずに変更してください。

バージョンアップ情報

2007/09/30
ver1.50 BlognPlus v2.5.1 に対応
2007/04/14
ver1.45 RSS2.0 に <guid> 属性を追加
2006/12/27
ver1.44 管理画面等を修正
2006/12/27
ver1.43 BlognPlus v2.4.0 に対応
2005/11/11
ver1.42 Atom0.3 にコメント・トラックバック用フィード配信機能追加
2005/11/10
ver1.41 Atom1.0 にコメント・トラックバック用フィード配信機能追加
2005/11/08
ver1.40 RSS2.0 にコメント・トラックバック用フィード配信機能追加
2005/10/31
ver1.32 ポッドキャスティングで MP3 ファイルへのリンクが間違っていたのを修正
2005/10/30
ver1.31 フィードの表示件数を設定可能に
2005/10/29
ver1.30 XSL に対応
2005/10/25
ver1.28 RSS2.0 で Podcasting(ポッドキャスティング)に対応
2005/10/18
ver1.27 改行処理を修正
2005/10/15
ver1.26 Atom1.0 でリンクの属性に間違いがあったのを修正
2005/10/15
ver1.25 BlognPlus v2.3.2 でカテゴリー別フィード出力時にエラーが出る不具合修正
2005/09/24
ver1.24 相対パスが絶対パスに変換されない不具合修正
2005/08/17
ver1.23 Atom1.0 で不正確なフィードを出力していたのを修正
2005/08/17
ver1.22 Atom1.0 で記事本文がXHTML準拠になるように修正
2005/08/13
ver1.21 MySQL版でエラーになる不具合を修正
2005/08/12
ver1.20 Atom1.0 生成機能追加、文法の間違いを修正
2005/08/10
ver1.12 XMLパースエラーになる不具合を修正
2005/08/08
ver1.11 カテゴリー別にフィードを配信出来る機能追加
2005/08/08
ver1.10 ユーザー別にフィードを配信出来る機能追加
2005/08/07
ver1.00 RSS2.0/Atom0.3 生成機能追加

サイト作成のヒント集に戻る