rss-17960_640

ということで、今回は、WordPressのフィードにサムネイル画像が出るようにする方法です。 FeedBurnerで確認するとこのような感じになります。

WordPressでFeedBurnerを使われる際は、FeedBurnerに転送できるプラグイン「FeedBurner FeedSmith Extend」を使用されるといいかなと思います。

「FeedBurner FeedSmith Extend」については、こちらで説明がされていますので使い方&ダウンロードはリンク先からお願いします。

RSSFeedに、アイキャッチ画像を追加

ここからが、今日の本題です。

WordPressのRSSFeedに、アイキャッチ画像を追加するには、functions.php に以下を記述すると画像が表示出来るようになります。

PHP
1
2
3
4
5
6
7
8
9
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');

記事内容を $content ではなく get_the_content() しているサンプルもありました。

PHP
1
2
3
4
5
6
7
8
9
10
function rss_post_thumbnail($content) {
global $post;
if(has_post_thumbnail($post->ID)) {
$content = '<p>' . get_the_post_thumbnail($post->ID) .
'</p>' . get_the_content();
}
return $content;
}
add_filter('the_excerpt_rss', 'rss_post_thumbnail');
add_filter('the_content_feed', 'rss_post_thumbnail');

$content で書いた場合と get_the_content()で書いた場合の差がどのように違うのかわかりません。(すみません。。) 表示には差はないと思っていますが、、、、全文配信すると違いがわかるかもしれません。

ちなみにわたしのfunctions.php では、

PHP
1
2
3
4
5
6
7
8
9
function rss_post_thumbnail($content) {
  global $post;
  if(has_post_thumbnail($post -> ID)) {
    $content = '<p>' . get_the_post_thumbnail($post -> ID) .
    '</p>' . get_the_excerpt();
  }
  return $content;
}
add_filter('the_excerpt_rss', 'rss_post_thumbnail');

と、このような感じです。 抜粋での配信なので、このような書き方にしたのか。。(※ 記憶ありませんです。)

ということで、1番初めに書いてある記述が一番手堅いような気がします。

いろいろと見ていると、各種フィード用テンプレートなんていうのも見つけました。

  • feed-atom.php … atom フィード用テンプレート
  • feed-atom-comments.php … atom コメントフィード用テンプレート
  • feed-rss2.php … rss 2.0 フィード用テンプレート
  • feed-rss2-comments.php … rss 2.0 コメントフィード用テンプレート
  • CSS3の各種セレクタ
  • CSS3の各種セレクタ

フィードごとにテンプレを変更できるみたいです。

※ 追記

FeedBurner で発行されるフィードでは相対パスの画像が表示されない問題があるそうで、もし画像が表示されないようであれば、AbsoluteRSS プラグインというプラグインを使ってみると上手く画像が表示されると思います。

AbsoluteRSS プラグインというのは、フィード内のすべての相対パスが自動的に絶対パスに変換されるものです。(エントリ内の URL 記述は相対パスのまま変わらずです。)

ADVERTISEMENT

Author:

follow FacebookPage

当ブログがお気に召しましたら是非いいね!をお願いします!

Follow Me

閲覧頂きありがとうございました:)

Message

トップへ戻る