Получение миниатюры записи с помощью get_the_post_thumbnail() – руководство и примеры

Получение миниатюры записи с помощью get_the_post_thumbnail()

Функция get_the_post_thumbnail() используется для получения тега <img> миниатюры записи в WordPress. Если миниатюра не задана, функция вернёт пустую строку.

Важно!

Чтобы использовать миниатюры записей, сначала нужно активировать эту функцию, добавив в файл functions.php вашей темы следующий код:

add_theme_support( 'post-thumbnails' );

Если нужно получить только URL изображения миниатюры, используйте функцию get_the_post_thumbnail_url().

Как работают миниатюры

Когда тема добавляет поддержку миниатюр, регистрируется специальный размер изображения - 'post-thumbnail', который отличается от размера 'thumbnail', настраиваемого в разделе Настройки > Медиа.

При использовании функции the_post_thumbnail() или других связанных с ней функций, по умолчанию используется размер 'post-thumbnail', но вы можете указать другой размер по вашему выбору.

Стили миниатюр

Миниатюры, созданные этой функцией, имеют класс wp-post-image. Также класс меняется в зависимости от размера миниатюры. В CSS миниатюры оформляются с помощью следующих селекторов:

img.wp-post-image
img.attachment-thumbnail
img.attachment-medium
img.attachment-large
img.attachment-full

Вы также можете указать свой собственный класс:

'alignleft' ] ); ?>

Как использовать get_the_post_thumbnail()

Функция имеет следующий синтаксис:

get_the_post_thumbnail( $post, $size, $attr );
  • $post (int/WP_Post) — ID записи или объект WP_Post, для которого нужно получить миниатюру.

    По умолчанию: глобальная переменная $post.

  • $size (string/array) — размер изображения.

    Принимает любые допустимые размеры изображения: thumbnail, medium, large, full или массив значений ширины и высоты в пикселях (в указанном порядке): array(32, 32).

    По умолчанию: post-thumbnail.

  • $attr (string/array) — строка или массив атрибутов для тега <img>.

    Пример значений по умолчанию:

    $default_attr = array(
      'src'   => $src,
      'class' => "attachment-$size",
      'alt'   => trim( strip_tags( $attachment->post_excerpt ) ),
      'title' => trim( strip_tags( $attachment->post_title ) ),
    );
    
    По умолчанию: ''.

Примеры использования

Пример 1: Что возвращает функция

$thumb = get_the_post_thumbnail( 6462, 'thumbnail' );

/* $thumb =
WordPress HTTP API
*/

Пример 2: Базовый пример использования

1 )); ?>
  • ID, 'thumbnail'); ?>

Пример 3: Размеры миниатюр

Размеры изображений в WordPress условно обозначаются так:

  • thumbnail - маленькая миниатюра.
  • medium - средний размер.
  • large - большой размер.
  • full - оригинальный размер изображения.

Вы можете установить свой размер в пикселях для каждого размера изображения на административной странице (Настройки > Медиа).

Примеры использования для получения изображения нужного размера:

get_the_post_thumbnail( $id ); // без параметра $size
get_the_post_thumbnail( $id, 'thumbnail' ); // маленький размер
get_the_post_thumbnail( $id, 'medium' );    // средний размер
get_the_post_thumbnail( $id, 'large' );     // большой размер
get_the_post_thumbnail( $id, array(100,100) ); // произвольный размер

Изменения в функции

  • С версии 2.9.0 — Функция была представлена.
  • С версии 4.4.0 — Параметр $post может быть как ID записи, так и объектом WP_Post.

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *