Использование функции the_post_thumbnail() в WordPress
Функция the_post_thumbnail() позволяет отображать миниатюру записи в WordPress. Эта статья объяснит, как использовать эту функцию, различные параметры и примеры.
Что такое миниатюра записи?
Миниатюра записи — это изображение, которое ассоциируется с конкретной записью. Когда тема WordPress предоставляет поддержку для миниатюр, она регистрирует специальный размер изображ��ния, который отличается от стандартного размера миниатюры.
Как использовать the_post_thumbnail()
Функция the_post_thumbnail() может быть использована для отображения миниатюры записи. По умолчанию используется размер post-thumbnail, но вы можете указать другой размер, если это необходимо.
Синтаксис
the_post_thumbnail( $size, $attr );
- $size (string|int[]) — размер изображения. Принимает любой зарегистрированный размер изображения или массив значений ширины и высоты в пикселях.
- $attr (string|array) — строка запроса или массив атрибутов.
Пример использования
the_post_thumbnail( 'thumbnail' ); // Миниатюра (150 x 150)
the_post_thumbnail( 'medium' ); // Средний размер (макс. 300x300)
the_post_thumbnail( 'large' ); // Крупный размер (макс. 1024x1024)
the_post_thumbnail( 'full' ); // Оригинальный размер
Примеры использования
Пример 1. Миниатюра как ссылка на запись
Чтобы отобразить миниатюру, которая будет ссылаться на саму запись, можно использовать следующий код внутри цикла WordPress:
Пример 2. Использование тега add_filter для добавления ссылки на миниатюру
Если вы хотите, чтобы миниатюра автоматически становилась ссылкой на запись, вы можете использовать хук post_thumbnail_html следующим образом. Код нужно добавить в файл functions.php вашей темы:
add_filter( 'post_thumbnail_html', 'my_post_image_html', 10, 3 );
function my_post_image_html( $html, $post_id, $post_image_id ) {
$html = '' . $html . '';
return $html;
}
Пример 3. Создание миниатюры с ссылкой на оригинальный размер
Вот как создать миниатюру, которая будет ссылаться на оригинальный размер изображения:
Пример 4. Регистрация нового размера изображения
Для того чтобы зарегистрировать новый размер изображения, используйте функцию add_image_size(). Пример:
// Регистрация нового размера в functions.php
add_image_size( 'spec_thumb', 360, 240, true );
// Использование этого размера в цикле
the_post_thumbnail( 'spec_thumb' );
Пример 5. Использование аргумента $attr
Вы можете указать различные атрибуты для миниатюры с помощью массива:
the_post_thumbnail( 'post-thumbnail', [
'class' => 'img-responsive responsive--full',
'title' => 'Основное изображение',
] );
Чтобы отключить ленивую загрузку для миниатюры, введенной в WordPress 5.5, вы можете сделать следующее:
the_post_thumbnail( 'post-thumbnail', [ 'loading' => false ] );
Пример 6. Удаление атрибутов ширины и высоты
Если вы хотите удалить жестко заданные атрибуты ширины и высоты у изображений, добавьте следующий код в ваш functions.php:
// Удалить атрибуты ширины и высоты у изображений
add_filter( 'post_thumbnail_html', 'remove_img_attr' );
function remove_img_attr( $html ) {
return preg_replace( '/(width|height)="d+"s/', '', $html );
}
Итог
Функция the_post_thumbnail() является мощным инструментом для отображения изображений в записях WordPress. Понимание её использования, а также различных параметров поможет вам сделать ваш сайт более привлекательным и функциональным.
Если у вас возникли дополнительные вопросы, не стесняйтесь их задавать.