Если у вас всегда будет только ОДНО изображение - лучше установить его в качестве «избранного изображения», а затем:
$image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'your-image-size' )
затем
echo $image[0] ;is your link
полный код:
<?php if (has_post_thumbnail( $post->ID ) ): ?>
<?php $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'full' ); ?>
<a href='<?php echo $image[0]; ?>'> my image link </a>
если вы не хотите использовать избранные изображения - следующая функция всегда даст вам первое изображение в сообщении
// Get URL of first image in a post
function postimage( $echo = true ) {
$image = get_children( array(
'post_parent' => get_the_ID(),
'post_type' => 'attachment',
'numberposts' => 1,
'order' => 'asc',
'orderby' => 'ID',
'post_mime_type' => 'image',
) );
$image_url = ( $image ) ? wp_get_attachment_url( current($image)->ID ) : "No Image";
if( $echo )
echo $image_url;
else
return $image_url;
}
если у вас более одного изображения, все становится немного сложнее - и вам придется искать все вложения и проходить по массиву. (изменить 'numberposts' => -1, чтобы получить все)