WordPressでのブログ運営にして間もなく一年が経とうとしています。
はじめは試行錯誤でphpって何?functionって日本語だと機能って意味だけれど何?みたいな感じでした。まぁ、今でも超有名なテーマStinger(Stinger6、Stinger7、Stinger PLUS+)に頼っている面も多々ありますが…。
それなりに、自分なりにカスタマイズして失敗したり成功したりの繰り返しを経て現在に至ります。
function.phpはWordPressにおいて非常に重要なファイルであるということは重々理解しました。その他にもテンプレートのphpファイルもエラー表記などがあった場合にはサイト全体が表示されなかたり、途中まで表示されたり…。などなど色々ありました。
ふと、気づくと自分のRSSフィードも購読していたりPINGOOなどもやっていたりもします。
(RSSフィードはFeedlyとか有名なものではなく、Googleリーダーが終了してからBloggerの生粋のものしかしていないのですが…。)
そこで、ふと気づいたことがあります。
スポンサーリンク
せっかくWordPressにはアイキャッチ画像というものがあるのにRSSフィードには反映されず(抜粋のみ表示設定の場合)になっていることに気づきました。
ちょこっとしたきっかけなのですが、
これがデフォルトなのでしょうけれどテキストエディタのNotepad++のいう使い方を調べていた時のことです。
その時にプラグインにてアイキャッチ画像を表示させる方法などはありましたが、私自身プラグインを多く使いたくないのです。
なぜか?
それは表示が重くなってしまうからです。(サイト表示速度のことです。)
↑
言わなくてもわかるわいとか言わないでくださいNe゙゙d(・ω・*)ネッ
ということで、
プラグインを使わずともアイキャッチ画像をFeedlyなどのRSSフィードに表示させる方法があるではないですか。
ものすごく大事なfunction.phpに以下コードを記述するだけでした。
基本形は以下になります。
// 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');
この上記のコードを子テーマのfunction.phpの一番最後に追記するだけでFeedlyなどのRSSフィードにアイキャッチ画像が表示されるようになります。
また、アイキャッチ画像の大きさの指定も可能のようです。
指定方法は以下の種類から選択(選べます)できます。
上記コードの5行目のget_the_post_thumbnail($post->ID) .のIDの後に、
- thumbnail(サムネイルサイズ)
- medium(中サイズ)
- large(大サイズ)
- full(フルサイズ)
- array(以下のようにサイズ指定も可能)
以下に全述しておかせて頂いています。
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)) //サイズ指定
そして、このままですと抜粋のみの場合は「続きを読む」ではなく、
FeedlyなどのRSSフィードリーダーでの表示が【…。】となってしまいます。
その【…。】の部分をしっかりと、
【続きを読む】の表示にさせてクリックしてもらうと、
ちゃんとその該当記事にリンクが貼られていて記事(サイト)の表示がされるようにしたいですよね。
その方法は、
さらに以下のコードを追加・追記することによってちゃんとしっかりと【続きを読む】と表示されて記事へのリンクも設定されています。
//[…]を...続きを読むリンクに修正
function new_excerpt_more($post) {
return '<p><a href="'. get_permalink($post->ID) . '">' . '...続きを読む' . '</a></p>';
}
add_filter('excerpt_more', 'new_excerpt_more');
これで、上記画像(BloggerのRSSフィードですがポリポリ (・・*)ゞ。)のようなアイキャッチ画像も【続きを読む】もないRSSフィードが、
FeedlyなどのRSSフィードでのアイキャッチ画像なしのブログ記事の抜粋表示が、アイキャッチ画像が表示されてかつ【続きを読む】となります。
以下は参考にさせていただいたブログです。(というか全く同じですm(__)m)
ただ…。
(ディーエムガジェットさんの最後の方のRSSエラー「XMLパースエラー」というのがよく分かっていませんが、私の場合https://infovarious.com/feed/にてRSSフィードの確認をした所「RSSエラー「XMLパースエラー」というエラーメッセージは表示されませんでした。)
是非、お試ししてみてください!!アクセス数増えるかもしれませんよ!?
アイキャッチ画像という魅力的なもので…。(^_-)-☆
追記です)アイキャッチ画像を設定し忘れた場合にはno-img.pngを表示させる方法もあるようです。
SiSO-LABさんの記事を読ませていただいて私自身も以下のように設定していたのでちょこっと変えるだけで、
大丈夫かなと思われますポリポリ (・・*)ゞ。
comment