image_downsize()
Получает массив данных картинки указанного размера: УРЛ, ширина и высота картинки-вложения.
Эта функция является ядром для wp_get_attachment_image_src(). Только ей нельзя передать третий параметр $icon. Она получает УРЛ и размеры именно вложения, которое является картинкой.
Получает УРЛ оригинальной картинки или её уменьшенной копии. Функция не создает уменьшенную копию картинки, а лишь получает УРЛ готовой уменьшенной картинки наиболее подходящей под указанные размеры. Если указаны произвольные размеры в массиве, подбирает подходящую картинку и пропорциональные ей размеры. См. примеры.
Хуки из функции
Возвращает
Массив|false
. Массив с данными о картинке или false
если не удалось получить картинку.
Массив возвращается следующего формата:
array( [0] => url // УРЛ картинки [1] => width // ширина картинки [2] => height // высота картинки [3] => true // true, если получен УРЛ уменьшенной копии картинки, а не оригинала )
Использование
image_downsize( $id, $size );
- $id(число) (обязательный)
- ID вложения-картинки, данные которой нужно получить.
- $size(строка)
Размер картинки, данные о которой нужно получить. Отличаться будет ссылка. В этом параметре можно указывать зарегистрированные в WP размеры, по умолчанию это:
thumbnail
— миниатюра (обычно 150х150) кадрированная.medium
— средний размер, не кадрирован. (По умолчанию).large
— большой размер, не кадрирован.full
— Оригинал картинки. Если создана «scaled» картинка, то будет получена она.
array( 32, 32 )
— также, можно указать размер в массиве в виде двух значений (ширина, высота). В этом случае будет подобран наиболее подходящий размер из имеющихся, затем картинка будет сжата/растянута до указанных размеров.С версии 2.5. этот параметр не влияет на размер медиа иконок (иконок для файлов), они всегда показываются в оригинальном размере.
По умолчанию: 'medium'
Примеры
#1 Функция получения УРЛ картинки среднего размера
Давайте напишем функцию аналогичную которая будет получать средний (medium) размер картинки-вложения, ID которой мы укажем в параметре $id:
function wp_get_attachment_medium_url( $id ){ $medium_array = image_downsize( $id, 'medium' ); $medium_path = $medium_array[0]; return $medium_path; }
#2 Как работает функция
Предположим у нас есть вложение с ID 55 - это картинка: http://wp-kama.ru/wp-content/uploads/2014/02/wix.png с размерами 500х258 пикселей. В настройках медиафайлов у нас стоят размеры для картинок: 80х80, 300х300, 1000х1000. Значит, при загрузке этой картинки, ВП создал 2 уменьшенные копии: 80х80, 300х300.
Теперь смотрите, что будет получать функция при указании разных размеров:
$img = image_downsize( 55, 'full' ); /* Array ( [0] => http://wp-kama.ru/wp-content/uploads/2014/02/wix.png [1] => 500 [2] => 258 [3] => ) */ $img = image_downsize( 55, 'thumbnail' ); /* Array ( [0] => http://wp-kama.ru/wp-content/uploads/2014/02/wix-80x80.png [1] => 80 [2] => 80 [3] => 1 ) */ $img = image_downsize( 55 ); /* Array ( [0] => http://wp-kama.ru/wp-content/uploads/2014/02/wix-300x258.png [1] => 300 [2] => 258 [3] => 1 ) */ $img = image_downsize( 55, array(100, 90) ); /* Array ( [0] => http://wp-kama.ru/wp-content/uploads/2014/02/wix.png [1] => 100 [2] => 51 [3] => ) */ $img = image_downsize( 55, array(100, 80) ); /* Array ( [0] => http://wp-kama.ru/wp-content/uploads/2014/02/wix-80x80.png [1] => 80 [2] => 80 [3] => 1 ) */
Список изменений
С версии 2.5.0 | Введена. |