Как изменить размер всех изображений, чтобы они были одного размера?

16 янв. 2016 г., 07:20:43
Просмотры: 14.7K
Голосов: -1

Я пытаюсь добиться такого вида без использования фоторедакторов и ручного изменения размеров каждого изображения.

Меня не смущает, если часть изображения будет обрезана, главное - сохранить единый размер и масштаб. Пример изображения с одинаковыми размерами

2
Комментарии

Как вы используете/добавляете эти изображения? Пожалуйста, предоставьте какой-либо код. Вам следует использовать миниатюры, тогда все изображения будут иметь одинаковые размеры + вам не нужны полноразмерные изображения в списке: это сэкономит трафик и значительно уменьшит время загрузки.

N00b N00b
16 янв. 2016 г. 07:39:04

Прочтение этого должно объяснить базовые принципы загрузки/добавления медиа (изображений) и стандартные 3 варианта ввода (настройки размеров), которые WordPress предлагает "из коробки". Далее вы можете прочитать это. И это также является хорошим источником. Как спрашивал N00b, что вы пробовали, какой код использовали. Вы действительно провели самостоятельное исследование? Если да, то что осталось непонятным.

Charles Charles
16 янв. 2016 г. 07:45:01
Все ответы на вопрос 1
0

Зарегистрируйте новый размер изображения с помощью функции add_image_size( $name, $width, $height, $crop ).

// Жесткое обрезание с левого верхнего угла

add_image_size( 'custom-size', 160, 90, array( 'left', 'top' ) );

Затем используйте плагин, например Regenerate Thumbnails, который автоматически создаст новые размеры на вашем сервере.

Вы также можете сделать свои пользовательские размеры доступными для выбора в админке WordPress. Для этого необходимо использовать хук image_size_names_choose, чтобы присвоить им обычное, понятное человеку название.

add_filter( 'image_size_names_choose', 'wpse_20160116_custom_sizes' );

function wpse_20160116_custom_sizes( $sizes ) {
    return array_merge( $sizes, array(
        'custom-size' => __( 'Ваше название пользовательского размера' ),
    ) );
}

Для миниатюр записей убедитесь, что используете add_theme_support( ‘post-thumbnails’ );, а затем обращайтесь к новому размеру с помощью the_post_thumbnail( $size, $attr ):

if ( has_post_thumbnail() ) { 
    the_post_thumbnail( 'custom-size' ); 
}

Для других изображений вы можете использовать wp_get_attachment_image:

// Предположим, что изображение из медиатеки имеет post id 42...

echo wp_get_attachment_image( 42, 'custom-size' );

Как отмечает @Charles, вы сможете увидеть свой новый размер на экране настроек медиафайлов.

Настройки медиафайлов в WordPress

16 янв. 2016 г. 07:44:45