スポンサーリンク

【決定版】プラグインなしでRSSにアイキャッチ画像を表示する2つの方法

投稿日:

本日の人気記事BEST10

所要時間目安: 約 3

RSSフィード画像

STINGER PLUS+ Stinger6 Stinger7 WordPress カスタマイズ 伝えたいこと 備忘録

この度は、度重なるRSSフィードにアイキャッチ画像を出力表示させる方法を連続して検証も兼ねて投稿してしまい申し訳ありませんでした。

何度か実際に実施してみてプラグインを使わないでRSSフィードにアイキャッチ画像を出力表示させることが出来ました。

以前の記事でも、

以前、RSSにアイキャッチ画像を出力する方法という記事を書きました。 普通の?RSSフィードに(PINGOOなど)にはアイキャッチがちゃんと表示されていました。

 

問題なく通常のFeedlyなどのRSSフィードにおいてはアイキャッチ画像は表示されていました。
ですが、BloggerのRSSフィードにはアイキャッチ画像が「image」という表示になってしまっていました。



スポンサーリンク

プラグインを使わずに全てのRSSフィードにアイキャッチ画像を表示させる方法まとめです。

1つ目の方法です。

以前と同じfunction.php内に以下のコードを追記するだけでBloggerのRSSフィード以外にはしっかりとアイキャッチ画像は出力表示されていました。

 

// RSSにアイキャッチを出力
 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');

 

上記の4行目の($post-ID) .のpost-IDの後に、

,'thumbnail'を記述するだけで、
BloggerのRSSフィードにもアイキャッチ画像を無事出力表示されるようになりました。

 

画像サイズの指定をしてやることで、しっかりと出力表示させることがより確実にできます。

 

2つ目の方法です。

同じくプラグインは使用しないでというのが大前提条件な訳ですが、

以下のコードをfunction.php内に追記することでFeedly以外などのRSSフィードにもアイキャッチ画像を出力表示することが出来ます。

 

/**
 * RSS Feeds へアイキャッチ画像を出力する
 * 画像サイズは thumbnail とする(すべてのRSSフィードにて表示させるには thumbnail サイズの為)
 */
 function rss_post_thumbnail($content) {
 global $post;
 $img = get_the_post_thumbnail($post->ID,'thumbnail');
 if(!empty($img)){
 $content = "<p>$img</p>" . $content;
 }
 return $content;
 }
add_filter('the_excerpt_rss', 'rss_post_thumbnail');
 add_filter('the_content_feed', 'rss_post_thumbnail');

 

上記のコードの場合には、$post->IDの後に画像サイズを指定してやらないとエラーになってしまいす。

画像サイズの指定方法は以下になりますが、
Stinger6、Stinger7やStingerPLUS+(affinger4でも同様かもしれませんが、)Stinger6とStinger7とStingerPLUS+以外は未検証になります。

 

※各テーマに合わせて指定サイズを変えてみてください。

 

画像サイズの指定方法のコード

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)) //指定サイズ

コメントアウトにて意味を書いてありますがそれぞれの説明としては、

  • thumbnail→そのままサムネイル画像のサイズ。
  • midium→中くらいのサイズ。
  • large→大きいサイズ。
  • full→フルサイズ。
  • 250,100→任意の指定サイズ。

となります。

 

これまで、「image」となってしまうRSSフィードでの内容の原因は、

function.php内に記載されている以下にあると思われます。

 

// アイキャッチサムネイル
 add_theme_support( 'post-thumbnails' );
add_image_size( 'st_thumb100', 100, 100, true );
 add_image_size( 'st_thumb150', 150, 150, true );

 

上記コードのスクリーンショット画像

RSSフィードアイキャッチ画像サムネイル指定サイズコード

 

この2つ目のプラグインを使用しないでRSSフィードにアイキャッチ画像を表示させる方法において、

RSSフィードの情報を確認してみると、しっかり description にイメージ画像が設定されています。

 

RSSフィードの情報スクリーンショット画像

 

RSSフィードにアイキャッチ画像を出力ソースコード正式版

 

なので、
1つ目の方法よりこちらの2つ目のfunctionコードでの実装の方が良いと思われます。

 

簡単なコードの説明としては、

 

処理としてはフィード情報の作成時にフィルターフックしてコンテンツの前に画像の img タグを挿入しているだけなので、画像用の特別な要素があるわけではなく、description として抜粋の前に画像が追加されます
RSSフィードにアイキャッチ画像を追加して Feedly で確認してみる – セルティスラボ

 

以上、
RSSフィードにアイキャッチ画像を表示させる方法でした。

スポンサーリンク

最後に参考サイトは以下になります。

WordPress で作成した記事を Feedly で見た時にサムネイル画像が表示されていない場合のプログラムサンプルです (^^)

 

ありがとうございます。

今回は、
なぜなのかを検証するのにローカルにてではなく実際に確認検証してみてしまったので、無駄な?記事もあります。

検証確認する際には・・・・・・。

まずは、ローカル環境にて行ってみるのをオススメします。

(でも、RSSフィードだから実際に記事を書いてみて投稿公開してみないと無理だよなぁ(・・*)。。oO(想像中))

-STINGER PLUS+, Stinger6, Stinger7, WordPress, カスタマイズ, 伝えたいこと, 備忘録

おすすめ記事一部広告

スポンサーリンク


  • この記事を書いた人
  • 最新記事

izu

はじめまして、izuと申します。医療ミスにより長胸神経麻痺になってしまい若干の障害がありブログをさせていただいています。旦那との共同運営になりつつありますがよろしくお願いいたします。

Follow Me !

よろしかったらシェアよろしくお願いします。



この記事が良かったら
いいね!お願いします(#^.^#)

WordPressデビュー津々浦々の
最新情報をお届けします

言えないことはTwitterで!!




Copyright© WordPressデビュー津々浦々 , 2017 AllRights Reserved Powered by AFFINGER4.