投稿内の最初の画像を任意の場所に表示させる方法
  • 投稿内の最初の画像を任意の場所に表示させる方法
  • 記事公開:2018/03/08
  • 最終更新:-------------

投稿内の最初の画像を任意の場所に表示させる方法

投稿内の最初の画像を任意の場所に表示させる方法をご紹介します。ループや関連記事などで各投稿の最初の画像を表示させたい場合など、今回の内容が役立ちます。5分程度で行えるカスタマイズです。

この記事は約 5 分で読めます。

投稿内の画像を取得して表示させるに至った経緯

クライアント様の一人が、サイトをカスタマイズしているとき、誤って全ての記事のアイキャッチ画像を削除してしまいました。ループ部分にアイキャッチ画像を表示させていたのですが、それらが全て表示されなくなった状態です。

「元に戻して!」と相談されたのですが、データ自体が消えていたので元には戻せません。

「戻せません」と回答しようとしたのですが、サイトを確認してみると、全ての記事でアイキャッチに登録していた画像と同じ画像が、本文の頭に設置されています。

よくよく聞くと、元々HTMLサイトだったのを、WordPressで作り直したサイトだったようです。
その時、本文の頭にあった画像をアイキャッチ画像として登録したとのこと。

この状態であれば、アイキャッチ画像を元に戻すことはできませんが、【本文の頭にある画像をループ部分に表示させる】は可能です。

ループ部分に画像が表示されれば良いとのことでしたので、この方法でループ部分に画像が表示させるように修正をさせていただきました。

【本文の頭にある画像を取得して任意の場所(上記の場合はループ)に表示させる】
やり方をまとめておきましたので、参考になれば参考にしてください。

投稿内に設置された最初の画像を取得して表示させる方法

今回の方法で取得できるのは、【投稿内に設置されている最初の画像】です。
2枚目、3枚目の画像を取得することはできません。

まず、functions.phpに以下のコードを追記してください。

function catch_that_image() {
global $post, $posts;
$first_img = '';
ob_start();
ob_end_clean();
$output = preg_match_all("/]+src=[\"'](s?https?:\/\/[\-_\.!~\*'()a-z0-9;\/\?:@&=\+\$,%#]+\.(jpg|jpeg|png|gif))[\"'][^>]+>/i", $post->post_content, $matches);
$first_img = $matches [1] [0];

if(empty($first_img)){ //Defines a default image
$first_img = "/images/default.jpg";
}
return $first_img;
}

WordPress記事内の最初の画像を表示、画像表示問題も解決。より抜粋。

$first_img = "/images/default.jpg";

上記の【/images/default.jpg】部分は、投稿内に画像が一つも無い場合に表示させる代替画像のパスに変更してください。

上記のコードでは相対パスになっていますが、絶対パスで記述しても構いません。

あとは、取得した画像を表示させた居場所に以下のコードを記述します。

<img src="<?php echo catch_that_image(); ?>" />

WordPress記事内の最初の画像を表示、画像表示問題も解決。より抜粋。

画像は元サイズで表示されます。
画像サイズを調整する場合は、CSSで調整するようにしましょう。

画像が親要素の横幅に収まるようにしてやりましょう。
例えば、以下の様に設定してやります。

img{
max-width: 100%;
height: auto;
width /***/:auto;
}

これで、親要素の横幅に画像が収まるようになります。

まとめ

投稿内の最初の画像を任意の場所に表示させる方法をご紹介いたしました。

functions.phpにコードをコピペして、画像を表示した居場所にもコードをコピペするだけでOKです。

記事一覧などで画像を表示させたいけど、アイキャッチ画像を登録していない。
記事数が多すぎて今からアイキャッチ画像を登録するのがめんどう。
ほとんどの記事に特有の画像を張っている。

上記の様な場合、今回の内容が役立つかと思います。

この記事が気に入ったら【いいね】しよう!

Wordpressサイトのカスタマイズで
お困りではありませんか?

あなたのWordpressサイトを、ご希望に沿ってカスタマイズいたします。
次に該当する方は、お気軽にご相談下さい。

  • Wordpressサイトをカスタマイズしたいが、やり方が分からないで困っている。カスタマイズの知識が豊富な人に任せたい。
  • Wordpressサイトをカスタマイズしたいが、自分でカスタマイズする暇がない。カスタマイズが得意な人に丸投げしたい。
  • Wordpressサイトをカスタマイズしてみたが、上手くカスタマイズできなかった。カスタマイズ経験が豊富な人に任せたい。
  • Wordpressサイトをカスタマイズしてみたら、バグが発生して困っている。正常に動作するように正しくカスタマイズしてほしい。

一つでも該当する方は、以下のリンクからチェックしてみてください。

詳細を確認する

現在、上記サービスは別ドメインで運用しております。
ドメインは異なりますが、わたしが提供させていただいているサービスです。

著者:takaya kondo

岡山在住のWebディレクターです。Wordpressを使ったWEBサイト制作を中心に10年間ほど活動させていただいています。

Wordpress関連の記事でお役に立てれば幸いです。

【関連記事】あなたが興味のありそうな関連記事をご紹介します。

  • 2016-01-16

    プラグインの落とし穴!プロがプラグインを最低限しか導入しない5つの理由

    プロがプラグインを最低限しか導入しない5つの理由をご紹介します。プラグインはサイトに色々な機能を実装できる頼もしい仕組みですが、その反面で危険性も隠されています。プラグインの危険性を知りたい方は、2分間だけこのコンテンツを読んでください。 記事を読む

  • 2016-04-08

    WordPress4.4から順番が変った!コメント入力フォームの入力欄の順番を戻す方法

    WordPress4.4からコメント入力フォームの入力欄の順番が変ってしまいました。個人差があると思いますが、個人的には従来の順番の方がしっくりとくる。そこで、コメント入力フォームの入力欄の順番を元に戻す方法をまとめてみました。3分で元に戻すことが出来ます。 記事を読む

  • 2015-11-10

    プラグインは不要です!WordPressの投稿ページにPV数を表示する方法

    WordPressの投稿ページにPV数を表示する方法をご紹介します。プラグインは使いません。投稿ページにPV数を表示させたい方には必見の内容となっています。この記事を読めば、3分後には投稿ページにPV数を表示することができます。 記事を読む

  • 2017-02-05

    Easy Featured Images で投稿一覧からアイキャッチ画像を一括設定する方法

    WordPressのプラグイン【Easy Featured Images】をご紹介いたします。投稿の編集画面を開かず、投稿一覧画面からアイキャッチを設定できるようにするプラグイン、【Easy Featured Images】に興味のある方は、ご一読ください。 記事を読む

  • 2016-09-10

    WordPressに埋め込んだYOUTUBE動画をレスポンシブに対応させる方法

    サイト内に埋め込んだYOUTUBE動画をレスポンシブに対応させる方法をご紹介します。スマホでサイトを観覧した時でも、もうYOUTUBE動画が画面からはみ出すことはありません。このカスタマイズは3分間でマスターできます! 記事を読む

コメントを残す


(必須)