get_the_post_thumbnail_url()

19 февраля, 2025
Получение URL миниатюры записи WordPress с помощью функции get_the_post_thumbnail_url(): параметры, примеры, безопасность
Быстрая навигация по записи

Описание функции get_the_post_thumbnail_url()

Функция get_the_post_thumbnail_url() возвращает URL миниатюры (изображения) записи в WordPress. Она используется для получения изображения, связанного с конкретной записью, что позволяет разработчикам выводить миниатюры в своих темах и плагинах.

Функция поддерживает возможность указания размера изображения и может использоваться как для одиночных записей, так и для циклов, где нужна миниатюра каждой записи.

Параметры

$post_id

Тип: int

Обязательный: Нет

По умолчанию: null

Описание: ID записи, для которой необходимо получить миниатюру

Возможные значения:

$size

Тип: string

Обязательный: Нет

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

Описание: Размер миниатюры, который необходимо вернуть

Возможные значения:

0: thumbnail

1: medium

2: large

3: full

4: custom размер (например, ‘200×200’)

Возвращаемое значение

Тип: string|null

Описание: URL миниатюры записи или null, если миниатюра не установлена

Возможные значения:

• URL изображения, если миниатюра существует

• null, если миниатюра не найдена

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

Базовый пример получения URL миниатюры по ID записи

				
					$thumbnail_url = get_the_post_thumbnail_url(42);
// Вывод: echo $thumbnail_url;
				
			

Выводит URL изображения, если миниатюра существует

Получение URL миниатюры с указанным размером

				
					$thumbnail_url = get_the_post_thumbnail_url(42, 'medium');
// Вывод: echo $thumbnail_url;
				
			

Выводит URL миниатюры среднего размера

Обработка отсутствия миниатюры

				
					$thumbnail_url = get_the_post_thumbnail_url(42);
if($thumbnail_url) {
    echo $thumbnail_url;
} else {
    echo 'Миниатюра отсутствует';
}
				
			

Выводит сообщение, если миниатюра не установлена

Использование функции в цикле для вывода миниатюр всех записей

				
					if (have_posts()) {
    while (have_posts()) { the_post();
        $thumbnail_url = get_the_post_thumbnail_url(null, 'full');
        echo '<img data-lazyloaded="1" src="data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=" decoding="async" data-src="'.$thumbnail_url.'" alt="'.get_the_title().'">';
    }
}
				
			

Выводит миниатюры для каждой записи в цикле

Безопасность

Валидация входных данных: Параметры проходят базовую валидацию внутри функции

Санитизация: Функция автоматически очищает данные, возвращая только корректные URL

Рекомендации: При выводе данных используйте esc_url() для URL миниатюр

— Связанные функции

Возвращает HTML-код миниатюры записи

Проверяет, установлена ли миниатюра для записи

— Хуки

Фильтрует HTML-код миниатюры перед выводом

Фильтрует HTML-код миниатюры для конкретных записей

— Примечания

– Ограничения

Функция возвращает null, если миниатюра не установлена для указанной записи

– Частые проблемы

  • Отсутствие миниатюры приводит к null
  • Неверный ID записи возвращает null

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

Нужна помощь с WordPress WooCommerce плагинами темой оптимизацией ?

Упрощаем сложное, создаем впечатляющее!
100% без риска
Нет обязательств по найму
Бесплатная оценка
5900 ₽
Услуги и врачи
Шаблон медицинского сайта включает онлайн-запись к врачу, каталог мед услуг, список врачей с опытом и рейтингом. Раздел вопрос/ответ обеспечивает оперативное взаимодействие с клиентами.

Поможем вывести Ваш бизнес на новый уровень!

Проснувшись однажды утром после беспокойного сна, Грегор Замза обнаружил

Добро пожаловать!

Авторизуйтесь, чтобы продолжить

или

Забыли пароль? Восстановить

* Если аккунта у Вас еще нет, то он будет создан автоматически

Давайте составим техническое задание!
100% без риска
Нет обязательств по найму
Бесплатная оценка стоимости
Здравствуйте! Я асистент на основе искусственного интеллекта. Вы можете общаться со мной, как с человеком — задавайте вопросы, описывайте свои идеи и требования.

С удовольствием помогу вам составить техническое задание для вашего WordPress проекта. Если Вам нужна техническая поддержка по купленному у нас плагину или шаблону, то создайте тикет в личном кабинете.

Выберите подходящий вариант или опишите свою задачу в свободной форме, и я помогу вам составить четкий план действий, для оценки стоимости нашими разработчиками! 😊