Как получить URL-адрес изображения только на the_post_thumbnail

Я хочу знать, как получить URL-адрес изображения на the_post_thumbnail()

По умолчанию the_post_thumbnail()

 <img width="800" height="533" src="http://img.wordpressask.com/post-thumbnails/book06.jpg" class="attachment-post-thumbnail wp-post-image" alt="book06" title="book06" /> 

Здесь я хочу захватить только src. Как фильтровать the_post_thumbnail() только для получения http://img.wordpressask.com/post-thumbnails/book06.jpg

Дай мне знать

Вы также можете попробовать:

Если у вас есть только один размер миниатюры:

 $thumbnail = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ) ); 

Или … если у вас несколько размеров:

 $thumbnail = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), "size" ); 

Обратите внимание: wp_get_attachment_image_src () возвращает массив: url, width, height, is_intermediate.

Поэтому, если вы просто хотите только URL-адрес изображения:

 echo $thumbnail[0]; 

Ресурсы:

Это делает трюк:

 <?php wp_get_attachment_image_src('subgall-thumb'); ?> 

Убедитесь, что вы используете правильное имя для эскиза, который вы вызываете.

Хорошо получилось, используя simplexml_load_string

 $dom = simplexml_load_string(get_the_post_thumbnail()); $src = $dom->attributes()->src; echo $src; 

Другой метод приветствуется.

Начиная с WordPress 4.4, есть эффективная основная функция, которая может обрабатывать это более чистым способом, чем ответы здесь.

Вы можете использовать the_post_thumbnail_url( $size ) который будет печатать URL-адрес миниатюры сообщения.

В качестве альтернативы, если вы хотите вернуть URL-адрес, а не сразу его выводить, вы можете использовать $url = get_the_post_thumbnail_url( $size )