WordPressで投稿の画像を取得

WordPressで投稿の画像だけを表示することはアーカイブページやトップページでよくあると思います。

たとえばこんな感じ

なので、それ用の関数をつくりました。
投稿サムネイルがある場合はそれを、ない場合は記事のギャラリーに入っている一番最初の画像を表示しています。

[php]
function print_post_image($size = ‘thumbnail’){
if ( has_post_thumbnail() ) {
the_post_thumbnail($size);
} else {
$attachments = get_children(array(
‘post_parent’ => get_the_ID(),
‘post_type’ => ‘attachment’,
‘post_mime_type’ => ‘image’,
‘order’ => ‘DESC’
));

if(!empty($attachments)){

$img = array_shift($attachments);
echo wp_get_attachment_image($img->ID ,$size);
}
}
}
[/php]

the_excerpt等と一緒に使うと結構楽しいかもしれません。