静的htmlにRDF、XML、RSSのコンテンツを表示させたいとき

2010 年 6 月 9 日

静的なただのhtmlにRDF、XML、RSSのコンテンツを表示させたいときがあるかと思います。
JAVASCRIPTやCGIやIFRAMEなどありますが、手っ取り早くPHPを使ってみましょう。
環境さえ揃っていれば簡単に実現できます。
・PHP5が動いているサーバー
・htaccessが使えてphpに書き換えができるサーバー

index.htmlに

<body>
<h2>最新ニュース</h2>
<?php
print "<div>";
$rssdata = simplexml_load_file("http://www3.asahi.com/rss/index.rdf");
for ($i=0; $i<30; $i++){
print "<p><a href=\”";
print $rssdata -> item[$i] -> link;
print “\”>”;
print $rssdata -> item[$i] -> title;
print $rssdata -> item[$i] -> description;
print “</a></p>\n”;
}
print “</div>”;
?>
</body>
</html>

とPHPのソースコードをHTMLの入れたいところへ記入。

.htaccessを設置して
<Files index.html>
AddType application/x-httpd-php .html
</Files>

とこの3行を記入。最後に改行を入れるのをお忘れなく。(結果的に4行だけの.htaccessになります。)
※.htaccessがわからないときは検査してみてください。案外簡単です。

以上です。
ここでは例としてasahi.comのニュースを表示させる例にしています。
できないときはもう一度確かめていただきたいのですが、条件は
・PHP5が動いているサーバー
・htaccessが使えてphpに書き換えができるサーバー
です。PHP5が使えてもうまく動かない環境もありました。なぜ?
よくわかりませんが、上記のことをやっても動かないときは環境のせいだとあきらめましょう。