外部のRSSフィードを取得(複数指定可)して記事を一覧表示する【WordPress】

WordPressでは外部のウェブサイトやブログサービス等のRSSフィードを取得する関数が用意されています。複数のフィードURLを指定することも可能なため、関連サイトの記事をまとめて表示したりすることができて便利です。

PR

fetch_feed()によるRSSフィードの取得

5~9行目で初期設定として取得したいフィードURLと表示数を指定しています。
取得したRSSフィードにエラーが無ければ表示の処理に進みます。

17~28行目でHTMLを出力しています。
fetch_feed()で取得したオブジェクトを元に日付とタイトルを表示しています。

<?php
include_once( ABSPATH . WPINC . '/feed.php' );

// 設定.
$feed_urls = array(
	'フィードURL-1',
	'フィードURL-2',
);
$showitems = 5;

$feed = fetch_feed( $feed_urls );
if ( ! is_wp_error( $feed ) ) {
	$maxitems = $feed->get_item_quantity( $showitems );
	$items    = $feed->get_items( 0, $maxitems );
}

if ( $maxitems ) {
	echo "<ul>\n";
	foreach ( $items as $item ) {
		echo "<li>\n";
		echo '<a href="' . esc_url( $item->get_permalink() ) . "\">\n";
		echo esc_html( $item->get_date( 'Y.m.d' ) ) . ' - ';
		echo esc_html( $item->get_title() ) . "\n";
		echo "</a>\n";
		echo "</li>\n";
	}
	echo "</ul>\n";
}
?>

RSSフィードを複数指定した場合は1つにまとめられ、新着順に表示されます。

参考リンク
WordPress Codex – fetch_feed()


PR

タイトルとURLをコピーしました