WP_GET_ATTACHMENT_IMAGE_SRCSET() Function in WordPress: Complete Guide

WP_GET_ATTACHMENT_IMAGE_SRCSET() │ WP 4.4.0

Функция wp_get_attachment_image_srcset() отвечает за получение значения атрибута 'srcset' для изображения, прикрепленного к вашему контенту. Этот атрибут позволяет браузерам выбирать подходящее изображение в зависимости от разрешения экрана.

Используемые функции

Она основывается на следующих функциях:

  • wp_calculate_image_srcset()
  • wp_get_attachment_image_src()

Производительность

  • Время выполнения: 0.001658 секунды (медленно) для одного выз��ва
  • Время выполнения: 35.26 секунды (медленно) для 50,000 вызовов

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

Функция возвращает строку с значением 'srcset' или false, если изображение не найдено.

Синтаксис функции

wp_get_attachment_image_srcset( $attachment_id, $size, $image_meta );

Параметры функции

  • $attachment_id (int, обязательный): ID прикрепленного изображения.
  • $size (string|int[]): Размер изображения. Может быть именем зарегистированного размера изображения или массивом с шириной и высотой в пикселях (в таком порядке).
    • По умолчанию: 'medium'
  • $image_meta (array|null): Метаданные изображения, возвращенные функцией wp_get_attachment_metadata().
    • По умолчанию: null

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

Пример 1: Получение значения srcset для изображения полного размера

echo wp_get_attachment_image_srcset( 6587, 'full' );
// вывод:
// http://example.com/wp-content/uploads/2015/12/WP-Recall-0-120x69.jpg 120w, 
// http://example.com/wp-content/uploads/2015/12/WP-Recall-0.jpg 975w

Пример 2: Добавление атрибута srcset к изображению

$attachment_id = 6587;

printf(
    '',
    wp_get_attachment_image_url($attachment_id),
    wp_get_attachment_image_srcset($attachment_id, 'full')
);

/* вывод:

*/

Пример 3: Добавление необходимых атрибутов к тегу img

Пример 4: Использование параметра $size в виде массива ширины и высоты



Примечания

  • Более подробно о работе функции можно узнать, изучив wp_calculate_image_srcset().

Изменения

  • Функция была добавлена в WordPress с версии 4.4.0.

Код функции

function wp_get_attachment_image_srcset( $attachment_id, $size = 'medium', $image_meta = null ) {
    $image = wp_get_attachment_image_src( $attachment_id, $size );

    if ( ! $image ) {
        return false;
    }

    if ( ! is_array( $image_meta ) ) {
        $image_meta = wp_get_attachment_metadata( $attachment_id );
    }

    $image_src  = $image[0];
    $size_array = array(
        absint( $image[1] ),
        absint( $image[2] ),
    );

    return wp_calculate_image_srcset( $size_array, $image_src, $image_meta, $attachment_id );
}

Теперь вы знаете, как использовать функцию wp_get_attachment_image_srcset() для работы с изображениями в WordPress!

Leave a Reply

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