image_downsize()
Отримує масив даних картинки вказаного розміру: УРЛ, ширина та висота картинки-вкладення.
Ця функція є ядром для wp_get_attachment_image_src() . Тільки їй не можна надіслати третій параметр $icon. Вона отримує УРЛ та розміри саме вкладення, яке є картинкою.
Отримує УРЛ оригінальної картинки або її зменшеної копії. Функція не створює зменшену копію картинки, а лише отримує УРЛ готової зменшеної картинки, що найбільше підходить під зазначені розміри. Якщо вказані довільні розміри в масиві, підбирає відповідну картинку та пропорційні їй розміри. Див. Приклади.
(дуже повільно) | 50000 разів – 6.16 сек
(швидко) |
PHP 7.0.8, WP 4.6
Хуки з функції
Повертає
Массив|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 | Введено. |