mick_ltc
メンバー
2 years前の投稿 #
RSSを読み込んで表示するのが一般的だと思います。
PHPが使える環境なら、MagpieRSSとか便利です。
http://magpierss.sourceforge.net/
日本語の解説も探せばいくらでもありますので、コード書けなくてもコピペで出来ます。
mick_ltc
メンバー
2 years前の投稿 #
print_rでデータが表示されるなら、きちんとRSS取得して読めてると思います。
あとは配列からデータ取得して出力するだけです。
件名、日付とアドレスを取得して、リスト形式で吐くサンプル書いておきます。
<?php
define('MAGPIE_OUTPUT_ENCODING', 'UTF-8');
require('magpierss-0.72/rss_fetch.inc');
$rss = fetch_rss("http://example.com/feed/");
foreach ($rss->items as $item ) {
$title = $item[title]; // 件名取得
$url = $item[link]; // リンク先取得
if($item['dc']['date']){ // 日付取得
$date = parse_w3cdtf($item['dc']['date']);
}else if($item[pubdate]){
$date = strtotime($item[pubdate]);
}
if($date){
$s_date = date("Y.m.d ", $date);
}
echo '<li><a href="'.$url.'">'.$s_date.$title.'</a></li>'."\n"; // リスト形式で出力
}
?>
mick_ltc
メンバー
2 years前の投稿 #
wordpressの管理画面の表示設定に
「RSS/Atom フィードで表示する最新の投稿数」というのがあるので、そこを変更すればいいです。
プログラム的にやるなら、ループの回数を制限してやればOKです。
上記コードだと配信されてる分全部書き出してしまうので。
$max=5; //最大件数
$i=0; //カウンター
foreach ($rss->items as $item ){
if($i>$max){ break; } //最大件数越えてたらループを抜ける
~略~
echo '<li><a href="'.$url.'">'.$s_date.$title.'</a></li>'."\n";
$i++; //カウントアップ
}
mick_ltc
メンバー
2 years前の投稿 #
if($i>$max){ break; } の{が全角文字でした。
if($i>$max){ break; } ですね・・・
失礼しました。