wordpress本体に含まれているSimplePieを使って、RSSフィードを取得して表示するサンプルを書き留めます。これを拡張すれば簡単にアンテナサイトを作成できそうです。
以下のサンプルでは、最新5件の記事のタイトル、画像、投稿日時、カテゴリーを順に表示します。画像は一番最初に見つけた画像を表示します。
ソースコード
<?php
function show_rss() {
	include_once( ABSPATH . WPINC . '/feed.php' );
	// デフォルトで12時間キャッシュしているため、中々更新されないからキャッシュ時間を1時間に変更
	add_filter( 'wp_feed_cache_transient_lifetime' , 'return_1hour' );
	$url = '取得したいサイトのフィード';
	$rss = fetch_feed( $url );
	remove_filter( 'wp_feed_cache_transient_lifetime' , 'return_1hour' );
	$maxitems = 0;
	if ( !is_wp_error( $rss ) ) {
		// 最新5件のフィードを取得
		$maxitems = $rss->get_item_quantity( 5 );
		$rss_items = $rss->get_items( 0, $maxitems );
	}
	echo '<ul>';
	if ( $maxitems == 0 ) {
		echo '<li>No items</li>';
	}
	else {
		foreach ( $rss_items as $item ) {
			echo '<li><a href="' . esc_url( $item->get_permalink() ) . '">';
			echo '<h2>' . esc_html( $item->get_title() ) . '</h2>';
			// 画像があれば、アドレスを取得して表示する
			if ( preg_match_all( '/src="([^"]*)"/', $item->get_content(), $image ) ) {
				if ($image[1]) {
					echo '<img src="' . esc_url( $image[1][0] ) . '" alt="no title"/>';
				}
			}
			echo '</a>';
			// 投稿した日時を表示
			echo $item->get_date( 'Y-m-d H:i:s' );
			// カテゴリーを表示
			$categorys = $item->get_categories();
			foreach ( $categorys as $category ) {
				echo esc_html( $category->get_label() );
			}
			echo '</li>';
		}
	}
	echo '</ul>';
}
function return_1hour( $seconds ) {
	return 3600;
}
?>
wordpress codexでの解説は以下になります。 関数リファレンス/fetch feed
						
						WordPressのタクソノミーのターム一覧を表示する方法					
						WordPressでAjax通信 リンク先のURLをPOST送信する方法					
						WordPress公式サイトの自作プラグインをバージョンアップする方法					
						ワードプレスのプラグインの作り方 管理画面編					
						WordPressのプラグインの作り方 基本編					
						wordpressでxmlサイトマップを作成する方法					
前:jqueryプラグイン コンテンツスライダー myContentSliderの使い方
次:wordpressのカスタムヘッダーの画像をスライドショーにする方法
コメントを残す