【WordPress】自作したテーマでRSSを配信する+アイキャッチ入りで配信する

スポンサーリンク

wordpress 3.3.2でテストしました。自分で作ったテーマ用の設定です。

スポンサーリンク

RSSフィードの配信

index.phpのHTMLヘッダ部分に以下のコードを入れればOKです

	<link rel="alternate" type="application/rss+xml" title="フィード" href="<?php bloginfo('rss2_url'); ?>" />
	<link rel="alternate" type="application/rss+xml" title="コメントフィード" href="<?php bloginfo('comments_rss2_url'); ?>" />

アイキャッチ入りでRSSフィードを配信

functions.phpに以下のコードを入れればOK

//RSSにアイキャッチ画像挿入
function do_post_thumbnail_feeds($content) {
    global $post;
    if(has_post_thumbnail($post->ID)) {
        $content = '<div>' . get_the_post_thumbnail($post->ID) . '</div>' . $content;
    }
    return $content;
}
add_filter('the_excerpt_rss', 'do_post_thumbnail_feeds');
add_filter('the_content_feed', 'do_post_thumbnail_feeds');

RSSフィードにWordPressのアイキャッチを表示する方法 | はっくすまぐさんのブログとコードを参考にさせていただきました。ありがとうございます。

うえのアイキャッチの画像サイズを小さめにする

上のコードでアイキャッチ画像がRSSに表示されるようになるんですが、原寸大で表示されます。640*480の画像だったら、RSSにもそのままでーんと載るという。RSSで画像がでかでかと載るのはなんかなぁ、と思うので画像サイズを小さめに設定。

//RSSにアイキャッチ画像挿入
function do_post_thumbnail_feeds($content) {
    global $post;
    if(has_post_thumbnail($post->ID)) {
        $content = '<div>' . get_the_post_thumbnail($post->ID, 'thumbnail') . '</div>' . $content;
    }
    return $content;
}
add_filter('the_excerpt_rss', 'do_post_thumbnail_feeds');
add_filter('the_content_feed', 'do_post_thumbnail_feeds');

get_the_post_thumbnail関数の2番目の引数に’thumbnail’を渡すとサムネイルサイズになります。詳しくはテンプレートタグ/get the post thumbnail – WordPress Codex 日本語版をどうぞ。