WordPressのアイキャッチ画像の機能を使わずアメブロ方式でサムネイルを表示させる

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

投稿記事の一枚目の写真をアイキャッチ画像として表示させたいと思いました。記事内の画像の順番を入れ替えても、常に一番上のものを表示させたいのが希望です。

アイキャッチ自動プラグインなどもありますが、アイキャッチ画像という概念を一切無視してやりたかったので、今回は使いませんでした。

TimThumbを使う方法が、ローカル環境で試したときは一番よく思えたのですが、ロリポップで動かなかったのと、cacheフォルダがテーマフォルダ内できることに不安を感じたので、断念しました。

【WordPress】最高に便利な投稿記事のサムネイル表示方法。

get_childrenを使った方法なども試しましたが、画像の順番を入れ替えたとき、表示するサムネイルを変えたい、という点が、この方法だと実現できませんでした。画像のIDを取得してくるとか、そういう感じだったので、記事内での順番とは紐付いていないようでした。

それで、正規表現を使ったこちらの方法で実現しました。

[解決済み] [閉] 記事中一番最初の画像を自動表示するが画像なしの時はHTML非表示にしたい (5 件の投稿)

私のこだわりは、サムネイル用に正方形にトリミングされた画像を表示させるという部分です。

オリジナルのコードに正規表現を2つ追加して、画像名の拡張子の前に-999×999などの記述があれば削除して、-150×150を追加するようにしています。

これだと、記事内でオリジナルの画像が使われた場合で、なおかつ画像名に-123×123のような英数字が拡張子の前に付いていた場合はうまく画像が表示されないという欠点があるのですが、そこは運用でカバーということで、アイキャッチ画像という概念を無視できる便利さのほうを優先しました。

functions.php

アイキャッチ画像を表示させたい場所

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

SNSでもご購読できます。