他のサイトのRSSを取得してページ上で更新情報を表示するPHPスクリプト(UTF-8版)
kotono8.comホームページならびにアンテナ一覧表示において使用中の改造スクリプトを公開します。他のサイトのRSSを取得してきて、それをページ上で表示します。「レッツPHP!」のネットツールで公開されている「RSSブロガー」のUTF-8改造版。
■RSSブロガー UTF-8改
■以下「レッツPHP!」からほとんどパクった概要
特定サイトのRSSを表示します。ブログの右ブロックとかに置くとか。シンプル。件数指定可能。
■サンプル*1
■ダウンロード
- rssv.php (zip圧縮)(本文概要なしバージョン)またはrssv2.php (zip圧縮)(本文概要ありバージョン)のいずれか
- RSS.php (zip圧縮)
解凍して同じフォルダ内にアップロードしてください。
■設置方法
サイト内で以下を埋め込んでください。srcのところはちゃんと自分の置いたphpファイルにリンクするように。また、rssv.phpを設置した場合は、rssv2.phpをrssv.phpに置き換えてください。
<iframe src="rssv2.php?u=[RSSファイルのURL]&n=[表示件数]" width="360" height="300" scrolling="no" marginheight="0" marginwidth="0" vspace="0" hspace="0" frameborder="0"></iframe>
- 表示件数(&n=)は省略可です。こんなん
- 表示幅はサイトに合わせてiframeのwidth=とtableのwidth=を修正してください。高さは内容によりけりなので、微妙な高さを設定してください。
- PEARのXML_RSSが必要です。
■[PEAR XML_RSSインストール方法]
→レン鯖などの人は、RSS.phpとParser.phpを「レッツPHP!」で公開されている「RSSトピックス」に同梱されているのを使う(rssv2と同じディレクトリに置く)か、公式サイトXML_RSS、XML_ParserからDLして、RSS.phpの先頭を「require_once 'Parser.php';」に修正してください。PEARすら導入されてない場合はPEARもダウンロードし、同一ディレクトリに置いてください。
→自鯖などの人は、Linuxならばコマンドで「pear install XML_RSS」で取得できます。インクルードディレクトリ以下XMLにDLされるので「require_once "XML/RSS.php";」となります。XML/Parser.phpはPHPインストール時に導入されているかと思います。Windowsな方は、go-pear.batを実行するといいですが、やや難しいかもしれません。↑の方法で行きましょう。
■以下、UTF-8改 by 松永英明 の説明
主な改造点は以下のとおり。
- 文字コードUTF-8のサイトで使うので、ファイルの文字コードならびに出力をすべてUTF-8(BOMなし)に変更。
- テーブルタグを使わず、DL-DT-DDタグに変更。
- スタイルシート指定。ファイル内ではMovableTypeのスタイルシートを流用。
元サイトに「改造、再配布は自由にどうぞ。ただし配布する場合はレッツPHP!(http://php.s3.to/)へのリンクを明記してください」とあるのでその規約に従います。また、この改造版については、改造、再配布は自由にどうぞ。ただし配布する場合はレッツPHP!(http://php.s3.to/)とこのページ(http://www.kotono8.com/2005/05/30rssv.html)へのリンクを明記してください。
このファイルの中身をいじるばあいは、UTF-8を扱えるエディタを使ってください(PARALYSIS / UTF-8とか参照。自分はEmEditor愛用)。
■ことのは編集室での使用法
ことのは編集室サイトでの実際の使用例(ことのは編集室表紙の右側更新内容、更新チェック)ではPHPファイルに埋め込んで表示させてました。また、公開したファイルと違って、概要部分を削除していました。
- ファイルは.phpファイル(サーバーの設定でPHPが使えるものなら何でもいい)
- 表示させたい.phpファイルに以下のような記述を埋め込む。いくつも並べればいくつも表示される。
<?php
include("http://www.kotono8.com/rss/rssv.php?u=http://www.kotono8.com/index.rdf");
include("http://www.kotono8.com/rss/rssv.php?u=http://www.twelve-girls-band.info/index.rdf");
?>
SSIを使って表示させる方法もついでに。
- ファイルは.shtmlファイル(SSIが使えれば何でもいい)
- 表示させたい.shtmlファイルに以下のような記述を埋め込む。いくつも並べればいくつも表示される。
<!--#include("http://www.kotono8.com/rss/rssv2.php?u=http://www.kotono8.com/index.rdf" -->
<!--#include("http://www.kotono8.com/rss/rssv2.php?u=http://www.twelve-girls-band.info/index.rdf " -->
- あとはデザインをCSSでいじる。
iframeだと枠の大きさを指定しなければならない、JavaScriptは普段から切っている、という人のためにPHPまたはSSI方式はニーズがあると思います。わらい。
■その他参考
- nJOY BLOG::サイトにRSSを埋め込んで表示させる方法 2005.04.11
- *1: なぜサンプルがしょこたんブログなのか。「レッツPHP」でのサンプルが眞鍋かをりだったので対抗してみた(´ー`)しょこたんおもしろいしな。
- 【広告】★文中キーワードによる自動生成アフィリエイトリンク