get_post_thumbnail_id() — как получить ID миниатюры поста?

Функция возвращает:

  • если у указанного поста установлена миниатюра — ID этой миниатюры,
  • если миниатюры для заданного поста не установлена — пустую строку,
  • если поста с указанным ID не существует — false;

Подробнее про миниатюры постов вы можете почитать здесь.

get_post_thumbnail_id( $post_id = null )
$post_id
(целое число) ID поста, ID миниатюры которого нужно получить. По умолчанию будет использоваться ID текущего поста из цикла.

Примеры

Простой пример — выведем ID миниатюры поста с ID = 5:

echo get_post_thumbnail_id( 5 );

Пример поинтереснее — получаем все вложения текущего поста, кроме его миниатюры:

$args = array(
	'post_type'   => 'attachment',
	'numberposts' => -1, // количество вложение, -1 - значит все
	'post_status' => 'any',
	'post_parent' => $post->ID, // тут можно указать ID нужного нам поста
	'exclude'     => get_post_thumbnail_id() // исключаем миниатюру
);
 
$attachments = get_posts( $args );
 
if ( $attachments ) {
	foreach ( $attachments as $attachment ) {
		/*
 		 * делаем с каждым вложением то, что нам нужно
		 */
	}
}
Миша Рудрастых Разработчик WordPress WooCommerce

Миша Рудрастых

Впервые познакомился с WordPress в 2009 году, и после двух лет мучений с Joomla и самописными движками это был просто бальзам на душу. С 2014 года меня можно встретить на WordCamp — официальной конфе по WP в Москве, иногда там выступаю. Также в настоящее время веду курсы по WordPress в Epic Skills в Питере.