WordPressで別SiteのRSS Feedを取得する(SimplePie)

get_rss_feed_to_wordpressWordPressを使って、別SiteのRSS Feedを取得したときのMemo.

環境: WordPress 3.3.2

WordPress 2.8からSimplePieを標準で利用できるようになったので、Official Documentを参考にすると簡単に実現できる。

<?php
$rss = fetch_feed('http://example.com/rss/feed/goes/here');
if (!is_wp_error( $rss ) ) {
    // 件数の取得。最大で5まで。
    $maxitems = $rss->get_item_quantity(5);

    // RSSデータを配列形式で取得。最初は0。
    $rss_items = $rss->get_items(0, $maxitems);
}
?>
<ul>
    <?php if ($maxitems == 0) echo '<li>No items.</li>';
    else
    // ループしながら表示する。
    foreach ( $rss_items as $item ) : ?>
    <li>
        <a href="<?php echo esc_url( $item->get_permalink() ); ?>"
        title="<?php echo '投稿日時:'.mysql2date(get_option('date_format'), $item->get_date()); ?>">
        <?php echo esc_html( $item->get_title() ); ?></a>
    </li>
    <?php endforeach; ?>
</ul>

FeedのTitleを取得するには、$rss->get_title();

FeedのURLを取得するには、$rss->get_base();

 

< Related Posts >