説明
get_the_post_thumbnail_url() は、投稿のアイキャッチ画像のURLを返す関数です。
基本構文
get_the_post_thumbnail_url( int|WP_Post $post = null, string|int[] $size = 'post-thumbnail' ): string|false
引数
$post:投稿IDまたはオブジェクト$size:画像サイズ
戻り値
画像のURL。アイキャッチがなければ false。
使い方(サンプル)
$url = get_the_post_thumbnail_url( null, 'full' );
if ( $url ) {
echo '<img src="' . esc_url( $url ) . '" alt="">';
}
注意点
- 戻り値が
falseの場合があるため、そのまま出力せずに判定します。
実務での使いどころ
- アイキャッチ画像のURLだけを取得するとき(CSSの
background-imageなど)。 og:imageなど、メタタグにURLを出すとき。
よくあるミスと対処
- アイキャッチ画像が未設定のとき、
falseが返る。確認せずに出力すると、空のURLになる。 - URLを出力するときに、エスケープしていない。
esc_url()を通す。
NG例
echo '<div style="background-image:url(' . get_the_post_thumbnail_url() . ')">'; // 未設定だと、空になる
OK例
$url = get_the_post_thumbnail_url( null, 'large' );
if ( $url ) {
echo '<div style="background-image:url(' . esc_url( $url ) . ')">';
}
使い分け早見表
| やりたいこと | 使うもの |
|---|---|
| URLだけ取得 | get_the_post_thumbnail_url() |
| imgタグを取得 | get_the_post_thumbnail() |
| 設定されているか判定 | has_post_thumbnail() |
関連項目
get_the_post_thumbnail()、has_post_thumbnail()
公式リファレンス:get_the_post_thumbnail_url() | Function | WordPress Developer Resources

コメント