has_post_thumbnail() — проверяет, установлено ли изображение как миниатюра поста

Практическое использование этой функции вы можете найти в моём видеоуроке.

Условный тег в WP, возвращает логическое true или false, в зависимости от того, есть ли у поста миниатюра.

has_post_thumbnail( $post_id = null )

Функция имеет только один параметр:

$post_id
(целое число) ID проверяемого поста, по умолчанию — текущий пост.

Пример

В этом примере при помощи the_post_thumbnail() выведем миниатюру к текущему посту, если же она не установлена, то выведем какое-нибудь изображение по умолчанию.

if( has_post_thumbnail() ) { // условие, если есть миниатюра
	the_post_thumbnail(); // если параметры функции не указаны, то выводится миниатюра текущего поста, размер thumbnail
} else {
	echo '<img src="' . get_stylesheet_directory_uri() . '/img/default.png" />'; // изображение по умолчанию, если миниатюра не установлена
}

Давайте рассмотрим аналогичный пример, но с условием, составленным иначе. Для вывода миниатюры здесь будет использоваться get_the_post_thumbnail():

echo ( has_post_thumbnail() ) ? get_the_post_thumbnail() : '<img src="' . get_stylesheet_directory_uri() . '/img/default.png" />';

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

Миша

Впервые познакомился с WordPress в 2009 году. Организатор и спикер на конференциях WordCamp. Преподаватель в школе Нетология.

Если вам нужна помощь с сайтом или разработка с нуля на WordPress / WooCommerce — пишите. Я и моя команда будем рады вам помочь!

Оставить комментарий

Если вы хотите добавить код, не забудьте обернуть его в <pre lang="php"></pre>, если же код – меньше одной строчки, то можно и в <code></code>.