get_the_post_thumbnail_url()

Извлекает URL миниатюры записи
Функция WordPress
INT 4.4.0
WordPress Icon

Описание функции

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

Использование

get_the_post_thumbnail_url( int|WP_Post $post = null, string|int[] $size = 'post-thumbnail' ): string|false

Функция принимает два параметра:

  • $post (int|WP_Post) — необязательный параметр, идентификатор записи или объект WP_Post. По умолчанию используется глобальная переменная $post.
  • $size (string|int[]) — необязательный параметр, размер зарегистрированного изображения или массив с высотой и шириной. По умолчанию используется размер 'post-thumbnail'.

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

<?php
/**
 * Выводит URL изображения миниатюры записи.
 *
 * @param int|WP_Post $post  (optional) Идентификатор записи или объект WP_Post. По умолчанию используется глобальная переменная $post.
 * @param string|int[] $size (optional) Размер зарегистрированного изображения или массив с высотой и шириной. По умолчанию используется размер 'post-thumbnail'.
 * @return string|false       URL изображения миниатюры записи или false, если изображение недоступно.
 */
$image_url = get_the_post_thumbnail_url( $post, $size );
if ( $image_url ) {
    echo '<img src="' . esc_url( $image_url ) . '" alt="Post Thumbnail" />';
} else {
    echo 'No thumbnail available.';
}
?>

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

Получение URL изображения поста


$image_url = get_the_post_thumbnail_url();

Функция get_the_post_thumbnail_url() возвращает URL изображения, привязанного к текущему посту. Если изображение не доступно, функция вернет false.

Получение URL оригинального изображения


$image_url = get_the_post_thumbnail_url($post, 'full');

Для получения URL оригинального изображения необходимо передать вторым параметром функции значение 'full'. В этом случае, если изображение доступно, будет возвращен URL оригинала.

Получение URL изображения с заданным размером


$image_url = get_the_post_thumbnail_url($post, 'thumbnail');

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

Получение URL изображения для поста с указанным ID


$image_url = get_the_post_thumbnail_url(123);

Для получения URL изображения для поста с указанным ID необходимо передать первым параметром функции ID поста. Например, 123 вернет URL изображения для поста с ID равным 123.

Вопросы и ответы

Как получить URL изображения миниатюры записи?

Для получения URL изображения миниатюры записи в WordPress используется функция get_the_post_thumbnail_url(). Она принимает два параметра: $post и $size.

Параметр $post опционален и может принимать значение ID записи или объект WP_Post. По умолчанию используется глобальная переменная $post.

Параметр $size также опционален и определяет размер изображения миниатюры. По умолчанию используется размер 'post-thumbnail'.

Функция возвращает строку с URL изображения миниатюры записи или false, если изображение недоступно.

Как изменить размер изображения миниатюры?

Для изменения размера изображения миниатюры можно использовать параметр $size функции get_the_post_thumbnail_url(). В качестве значения этого параметра можно указать зарегистрированный размер изображения или массив с указанием ширины и высоты.

Например, чтобы получить URL изображения миниатюры с размером 300×200 пикселей, можно использовать следующий код:

$thumbnail_url = get_the_post_thumbnail_url($post, array(300, 200));

Как получить URL оригинального изображения, если указанный размер не существует?

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

Например, если для записи не был задан размер изображения с именем «thumbnail», то функция вернет URL оригинального изображения записи.

Пример кода:

$thumbnail_url = get_the_post_thumbnail_url($post, 'thumbnail');
if (!$thumbnail_url) {
    $thumbnail_url = get_the_post_thumbnail_url($post);
}

Как проверить, доступна ли миниатюра для текущей записи?

Для проверки доступности миниатюры для текущей записи можно использовать функцию has_post_thumbnail(). Она возвращает true, если миниатюра доступна, и false в противном случае.


if ( has_post_thumbnail() ) {
    // Миниатюра доступна
} else {
    // Миниатюра не доступна
}

Как получить URL изображения миниатюры для определенной записи?

Для получения URL изображения миниатюры для определенной записи можно использовать функцию get_the_post_thumbnail_url(). Она принимает параметр $post, который может быть ID записи или объектом WP_Post. Если параметр не указан, будет использован глобальный объект $post.


$post_id = 123; // ID записи
$thumbnail_url = get_the_post_thumbnail_url( $post_id );

Как получить URL изображения миниатюры с определенными размерами?

Для получения URL изображения миниатюры с определенными размерами можно передать параметр $size в функцию get_the_post_thumbnail_url(). Параметр $size может быть строкой, указывающей на зарегистрированный размер изображения, или массивом с указанием ширины и высоты.

Если указанный размер не зарегистрирован, будет возвращен URL оригинального изображения.


$post_id = 123; // ID записи
$thumbnail_url = get_the_post_thumbnail_url( $post_id, 'medium' );

Как получить URL изображения миниатюры без указания размера?

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

$thumbnail_url = get_the_post_thumbnail_url();
if ( $thumbnail_url ) {
    echo 'URL изображения миниатюры: ' . $thumbnail_url;
} else {
    echo 'Изображение миниатюры недоступно.';
}

Как получить URL изображения миниатюры для нескольких размеров одновременно?

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

$thumbnail_sizes = array( 'thumbnail', 'medium', 'large' );
foreach ( $thumbnail_sizes as $size ) {
    $thumbnail_url = get_the_post_thumbnail_url( null, $size );
    if ( $thumbnail_url ) {
        echo 'URL изображения миниатюры (' . $size . '): ' . $thumbnail_url;
    } else {
        echo 'Изображение миниатюры (' . $size . ') недоступно.';
    }
}

Как получить URL изображения миниатюры для записи с определенным ID?

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

$post_id = 123;
$thumbnail_url = get_the_post_thumbnail_url( $post_id );
if ( $thumbnail_url ) {
    echo 'URL изображения миниатюры для записи с ID ' . $post_id . ': ' . $thumbnail_url;
} else {
    echo 'Изображение миниатюры для записи с ID ' . $post_id . ' недоступно.';
}

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

Связанные элементы

  • Функция has_post_thumbnail(): проверяет, есть ли у записи миниатюра.
  • Функция set_post_thumbnail_size(): устанавливает размеры миниатюры записи.
  • Функция get_post_thumbnail_id(): возвращает ID миниатюры записи.
  • Функция the_post_thumbnail_url(): выводит URL миниатюры записи.
  • Хук post_thumbnail_html: фильтрует HTML-код миниатюры записи.
  • Хук post_thumbnail_size: фильтрует размеры миниатюры записи.
  • Класс WP_Post: представляет объект записи.
Обсуждение