ちょっとしたメモ(RSSフィード)

RSS フィード って?

RSSとは、ニュースサイトやブログなど、Webサイトの見出しや要約をまとめてくれる技術。 RSS技術を使って配信される「RSSフィード」を利用すれば、Webサイトの更新情報や記事の要約などを素早くチェックすることができる。・ ・ ・ らしい。

外部の RSS フィードを取得して、自サイトに表示したい時、ワードプレスでは?

ワードプレスの、公式サイトに次の例があったので、そのまま、テンプレートなどに記載したら簡単に表示できました。

<?php // RSS フィードを取得します。
include_once( ABSPATH . WPINC . '/feed.php' );

// 以下で、指定されたフィードから SimplePie のオブジェクトを取得します。
// つまり、「http://example.com/rss/feed/goes/here」部分に取得したいフィードを入力すると、SimplePieによってRSSが表示されます。
// なお、この部分について array 関数を使い、配列にすれば、複数の RSS フィードを同時に取得して、複数の RSS フィードを1つにまとめて時系列に並べて表示することもできます。
$rss = fetch_feed( 'http://example.com/rss/feed/goes/here' );

$maxitems = 0;

if ( ! is_wp_error( $rss ) ) : // ちゃんとフィードが生成されているかをチェックします。

    // すべてのフィードから最新5件を出力します。
    $maxitems = $rss->get_item_quantity( 5 ); 

    // 0件から始めて指定した件数までの配列を生成します。
    $rss_items = $rss->get_items( 0, $maxitems );

endif;
?>

<ul>
    <?php if ( $maxitems == 0 ) : ?>
        <li><?php _e( 'No items', 'my-text-domain' ); ?></li>
    <?php else : ?>
        <?php // Loop through each feed item and display each item as a hyperlink. ?>
        <?php foreach ( $rss_items as $item ) : ?>
            <li>
                <a href="<?php echo esc_url( $item->get_permalink() ); ?>"
                    title="<?php printf( __( 'Posted %s', 'my-text-domain' ), $item->get_date('j F Y | g:i a') ); ?>">
                    <?php echo esc_html( $item->get_title() ); ?>
                </a>
            </li>
        <?php endforeach; ?>
    <?php endif; ?>
</ul>

但し、こんな面倒くさいことをしなくても、オリジナルで、RSS ウイジェットが準備されていたので、それを使えば、何も考えずにフィードが取れました。

こちらの方が簡単で便利!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です