ワードプレスのアイキャッチ画像のURLをPHPコードでループ内、もしくは投稿IDから取得する方法をご紹介いたします。

ループ内で投稿のアイキャッチ画像のURLを取得する

ループとはワードプレス特有の投稿のコンテンツなどのデータを取得する処理で、

if ( have_posts() ) : while ( have_posts() ) : the_post();

のような書き方をされます。この間に記載することでこのループで出力しようとする投稿のアイキャッチ画像のURLを取得するPHPコードは下記となります。

if (has_post_thumbnail() ){
    $imageurl = wp_get_attachment_image_src(get_post_thumbnail_id());
}

if (has_post_thumbnail() ) の部分で投稿がアイキャッチ画像を指定されているかを調べます。

wp_get_attachment_image_src に投稿に含まれるアイキャッチ画像のIDを指定し、
$imageurl にアイキャッチ画像のURLが入ります。

投稿のIDを指定してその投稿に指定されているアイキャッチ画像のURLを取得する

has_post_thumbnail , get_post_thumbnail_id に直接投稿のIDを指定することも可能です。
下記のコードはループ外で投稿のIDを直接指定して投稿のアイキャッチ画像のURLアドレスを取得します。

$postid = 1;
if (has_post_thumbnail($postid) ){
    $imageurl = wp_get_attachment_image_src(get_post_thumbnail_id($postid));
}

WordPress ワードプレスのテーマのカスタマイズ・修正などのご依頼・ご相談はワードプレスドクターまでお気軽にお送りください