ブログのRSSを取得してウェブサイトに表示!やっぱりライブドアブログがいいね!
2010-08-18
自分のブログからRSSを取得して、ウェブサイトに表示するスクリプトとりあえず、アメブロのRSS「1.0」を取得する場合です。
<?php
$xml="RSS1.0のアドレス";
$data=simplexml_load_file($xml);
foreach($data->item as $item){
print<<<DISP
<a href="$item->link" target="_blank">$item->title</a><br />
$item->description<br />
DISP;
}
?>
RSS「1.0」だと、ブログの内容が途中で省略されていますので、全部ひっぱってくるには、$xml="RSS1.0のアドレス";
$data=simplexml_load_file($xml);
foreach($data->item as $item){
print<<<DISP
<a href="$item->link" target="_blank">$item->title</a><br />
$item->description<br />
DISP;
}
?>
RSS「2.0」を引っ張ってきてください。
<?php
$xml="RSS2.0のアドレス";
$data=simplexml_load_file($xml);
foreach($data->channel->item as $item){
print<<<DISP
<a href="$item->link" target="_blank">$item->title</a><br />
$item->description<br />
DISP;
}
?>
注意としては、RSS2.0で内容を引っ張って来ても、画像は取り込めないので、正規表現で<img>タグを削除したりする処理をした方がいいです。
$xml="RSS2.0のアドレス";
$data=simplexml_load_file($xml);
foreach($data->channel->item as $item){
print<<<DISP
<a href="$item->link" target="_blank">$item->title</a><br />
$item->description<br />
DISP;
}
?>
<?php
$xml="RSS2.0のアドレス";
$data=simplexml_load_file($xml);
foreach($data->channel->item as $item){
// 画像削除する処理
$des=$item->description;
$des=preg_replace("<IMG (.*)*?>","",$des);
$des=preg_replace("<img (.*)*?>","",$des);
print<<<DISP
<a href="$item->link" target="_blank">$item->title</a><br />
$des<br />
DISP;
}
?>
ん~でも、やっぱり画像引っ張れないのは不満ですね。
そこで、やっぱりウェブ系ブログでカユいところまで手が届くっていえば、ライブドアブログ
ってことで、記事中の画像も引っ張れるか試してみました!
さすがライブドアブログ!!引っ張れます!プログラムは若干変更
ちなみにライブドアブログのRSSアドレスは
ブログトップページのアドレス/index.rdf
<?php
$xml="ライブドアのRSSアドレス";
$data=simplexml_load_file($xml);
foreach($data->item as $item){
$cont=$item->children("http://purl.org/rss/1.0/modules/content/")->encoded;
print<<<DISP
<a href="$item->link" target="_blank">$item->title</a><br />
$cont<br clear="all" />
DISP;
}
?>
これは、ブログ書くならライブドアブログですな!
この記事が参考になったら、投票お願いします。 | 投票 |
