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: Вложения, Условные теги, Цикл: add_image_size(), author_can(), cat_is_ancestor_of(), comments_open(), email_exists(), get_attached_file(), get_children(), get_delete_post_link(), get_edit_post_link(), get_extended(), get_next_posts_link(), get_permalink(), get_post_thumbnail_id(), get_post_type(), get_posts(), get_previous_posts_link(), get_query_var(), get_search_query(), get_the_content(), get_the_date(), get_the_excerpt(), get_the_ID(), get_the_post_thumbnail(), get_the_time(), get_the_title(), has_excerpt(), has_nav_menu(), has_post_format(), has_post_thumbnail(), has_tag(), have_comments(), have_posts(), in_category(), is_404(), is_active_sidebar(), is_admin(), is_admin_bar_showing(), is_archive(), is_attachment(), is_author(), is_blog_installed(), is_category(), is_date(), is_day(), is_feed(), is_front_page(), is_home(), is_main_query(), is_main_site(), is_month(), is_object_in_term(), is_page(), is_page_template(), is_paged(), is_post_type_archive(), is_preview(), is_rtl(), is_search(), is_single(), is_singular(), is_ssl(), is_sticky(), is_tag(), is_tax(), is_taxonomy_hierarchical(), is_time(), is_user_logged_in(), is_year(), media_sideload_image(), paginate_links(), post_class(), query_posts(), setup_postdata(), term_is_ancestor_of(), the_content(), the_date(), the_excerpt(), the_ID(), the_permalink(), the_post(), the_post_thumbnail(), the_search_query(), the_time(), the_title(), the_title_attribute(), wp(), wp_check_filetype(), wp_get_attachment_image_src(), wp_get_attachment_url(), wp_get_original_image_path(), wp_get_original_image_url(), wp_is_mobile(), wp_is_post_revision(), WP_Query, wp_reset_postdata(), wp_reset_query()

Миша

Недавно я осознал, что моя миссия – способствовать распространению WordPress. Ведь WordPress – это лучший движок для разработки сайтов – как для тех, кто готов использовать заложенную структуру этой CMS, так и для тех, кто предпочитает headless решения.

Сам же я впервые познакомился с WordPress в 2009 году. Организатор WordCamp. Преподаватель в школах Epic Skills и LoftSchool.

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