訂正:
すみません、既に関数ありました。@just_a_personさんありがとうございます。
function get_the_post_thumbnail_url( $post = null, $size = 'post-thumbnail' ) {
$post_thumbnail_id = get_post_thumbnail_id( $post );
if ( ! $post_thumbnail_id ) {
return false;
}
return wp_get_attachment_image_url( $post_thumbnail_id, $size );
}
WordPressでアイキャッチ画像を表示する時は、
the_post_thumbnail()
が有名ですが、画像のURLだけを欲しい事がよくあります。
なので関数にまとめておくと便利です。
functions.php
/**
* 投稿のアイキャッチ画像を取得して、画像urlを返す
*
*
* @param type int $post_id
* @param type string $size
* @return string image_src_url
*/
function return_eyecatch_src($post_id,$size='medium')
{
$post_thumbnail_id = get_post_thumbnail_id($post_id);
$thumb_src = wp_get_attachment_image_src($post_thumbnail_id,$size);
if($thumb_src !== false){
return $thumb_src[0];
}else{
return false;
}
}
$post->IDを渡して、第二引数にサイズを渡します。
使い方はループ内で、
$thumb_src = return_eyecatch_src($post=>ID);
$thumb_output = '';
if($thumb_src){
$thumb_output = '<img src="'.$thumb_src.'" alt="">';
}
のような感じです。
wp_get_atachement_img_src()
はサイズなどの情報が取れて便利ですが、
画像URLだけを使う場合が大半なので、関数でまとめた方が楽かもです。