WordPress RSSフィードにサムネイル(アイキャッチ)画像を表示させる方法

【この記事を読むのに必要な時間は約 5 分です。】

WordPress日本語フォーラムはわかってる人とわかってない人をつなぐ本当に素晴らしいフォーラムだとつくづく思う。わかってない私が質問してもわかりやすく素早く回答してくれる。
ということで、RSSフィードにサムネイル(アイキャッチ)画像を表示する方法について、ご教授頂いたので説明する。

functions.phpへの記載

私はできるだけプラグインを多用してfunctions.phpは汚したくない派だが、適当なプラグインがなさそうなので、functions.phpへ以下のように記載する。

function rss_post_thumbnail($content) {
global $post;
if(has_post_thumbnail($post->ID)) {
$content = '<p>' . get_the_post_thumbnail($post->ID) .
'</p>' . $content;
}
return $content;
}
add_filter('the_excerpt_rss', 'rss_post_thumbnail');
add_filter('the_content_feed', 'rss_post_thumbnail');

投稿記事のRSSフィードでの表示方法

各投稿記事のRSSフィードでの表示を記事全文にするか抜粋にするかは、WordPressダッシュボード>設定>表示設定>RSS/Atomフィードでの各投稿の表示で、「全文を表示」か「抜粋のみを表示」かを選択する。

rss_thumbnail

上記ハイライト部分「$content」だが、このように記載しておけば、WordPressダッシュボード>設定>表示設定>RSS/Atomフィードでの各投稿の表示で、「全文を表示」か「抜粋のみを表示」かを設定したとおりに表示する。
なお、「$content」に代えて「get_the_content()」にするとWordPressダッシュボード>設定>表示設定>RSS/Atomフィードでの各投稿の表示でどちらを選択していようとも全文を表示する。
同様に、「$content」に代えて「get_the_excerpt()」にするとWordPressダッシュボード>設定>表示設定>RSS/Atomフィードでの各投稿の表示でどちらを選択していようとも抜粋を表示する。
それがわからずに、当初、「get_the_content()」と記述していたので、全文が表示されて困った。WordPress日本語フォーラムで質問して回答を得た。ありがとうございます。

画像サイズの調整

画像サイズも指定することが可能。以下のいずれかを選択して記述を変更するとよい。

get_the_post_thumbnail($post->ID,'thumbnail') //サムネイルのサイズ
get_the_post_thumbnail($post->ID,'medium') //中サイズ
get_the_post_thumbnail($post->ID,'large') //大サイズ
get_the_post_thumbnail($post->ID,'full') //フルサイズ
get_the_post_thumbnail($post->ID,array(250,100)) //指定サイズ

例1)WordPressダッシュボードで指定した方法で、投稿記事の本文を(全文または抜粋)表示し、画像は中サイズで表示する場合。

function rss_post_thumbnail($content) {
global $post;
if(has_post_thumbnail($post->ID)) {
$content = '<p>' . get_the_post_thumbnail($post->ID,'medium') .
'</p>' . $content;
}
return $content;
}
add_filter('the_excerpt_rss', 'rss_post_thumbnail');
add_filter('the_content_feed', 'rss_post_thumbnail');

例2)WordPressダッシュボードで指定した方法にかかわらず、投稿記事の本文を全文表示し、画像はサムネイルサイズで表示する場合。

function rss_post_thumbnail($content) {
global $post;
if(has_post_thumbnail($post->ID)) {
$content = '<p>' . get_the_post_thumbnail($post->ID,'thumbnail') .
'</p>' . get_the_content();
}
return $content;
}
add_filter('the_excerpt_rss', 'rss_post_thumbnail');
add_filter('the_content_feed', 'rss_post_thumbnail');

以上

Related Posts Plugin for WordPress, Blogger...

コメント

  1. […] るわ、ってかWordPress RSSフィードにサムネイル(アイキャッチ)画像を表示させる方法 |   JUMP-UP.INFOをそのまんまでいけんじゃね? […]

  2. […] WordPress RSSフィードにサムネイル(アイキャッチ)画像を表示させる方法 […]

  3. […] まずはじめに見つけたのがこちら。   […]