「MagpieRSS」と PHP を組み合わせて RSS(RSS0.9 / RSS1.0)を取得、解析、出力させます。
出力結果を HTML ページに埋め込むには Server Side Include(SSI)を使いますが、SSI が使えない場合は iframe でも可能です。
設置例は「nJOY」のトップページを見てください。
1) 以下の PHP スクリプトをコピーして、適度に修正。拡張子を「.php」にして保存。
【例:rss.php】修正が必要なのは青字の部分<?php require_once 'rss_fetch.inc'; require_once 'code_table.ucs2jis'; require_once 'jcode.php'; $url = 'http://i-njoy.net/blog/?mode=rss'; $rss = fetch_rss($url); $title = $rss->channel['title']; //JcodeConvert($str, $from, $to) //0:PASS(無変換)1:EUC-JP 2:Shift_JIS 3:ISO-2022-JP(JIS) 4:UTF-8 $title = JcodeConvert($title, 4, 2); foreach ($rss->items as $item ) { $title = $item[title]; $title = JcodeConvert($title, 4, 2); $url = $item[link]; echo "<li><a href=\"$url\">$title</a></li>\n"; } ?>
2) MagpieRSS を解凍(「Lhaplas」を使用。tar.gz を解凍できる物なら何でも可。)
3) jcode_1.35a.zip を解凍
4) 解凍したファイルの中から以下のファイルと先ほどのスクリプト(rss.php)をサーバーにアップロード。
【ディレクトリ構成例】public_html / index.html (トップページ) │ └ magpie / rss.php │ jcode.php │ code_table.ucs2jis │ rss_cache.inc │ rss_fetch.inc │ rss_parse.inc │ rss_utils.inc │ ├ extlib / Snoopy.class.inc │ └ cache (このディレクトリは自分で作る)
5) rss.php に直接アクセスして動作確認してみましょう。
上記のスクリプトが上手く動作していればリスト化された最新記事が表示されるはず。
6) RSS を埋め込みたいページに SSI で以下の記述を追加
<ul><!--#include file="rss.phpのアドレス" --></ul>
リンクを新しいページで開く
<a href=\"$url\" target=\"_blank\">$title</a>iframe 用
<html> <head> </head> <body> <ul> <?php require_once 'rss_fetch.inc'; (中略) echo "<li><a href=\"$url\">$title</a></li>\n"; } ?> </ul> </body> </html>
上述のサンプルスクリプトを改造したスクリプトを配布しています。