Отключение автоматического изменения размера загруженных изображений
Каждый раз, когда я загружаю большое изображение, его размер автоматически изменяется по ширине записи. Это является негативной функцией для сайтов с комиксами. Мне нужно отображать изображения в полную ширину, которые я могу изменять по размеру при необходимости во время загрузки.
Есть ли что-нибудь, что может исправить эту проблему?

Чтобы отключить изменение размеров для всех размеров изображений без ручного удаления каждого размера с помощью функции remove_image_size
, используйте фильтр intermediate_image_sizes_advanced
/**
* @param array $sizes Ассоциативный массив размеров изображений.
* @param array $metadata Ассоциативный массив метаданных изображения: ширина, высота, файл.
*/
function remove_image_sizes( $sizes, $metadata ) {
return [];
}
add_filter( 'intermediate_image_sizes_advanced', 'remove_image_sizes', 10, 2 );

WordPress автоматически изменяет размеры загружаемых изображений на 3 стандартных размера:
- Большой (По умолчанию: 1024 × 1024)
- Средний (По умолчанию: 300 × 300)
- Миниатюра (По умолчанию: 150 × 150)
Во всех трех случаях WordPress по умолчанию обрезает изображения из центра и создает их версии для разных случаев использования. Это делается для обеспечения скорости загрузки.
Когда мы выводим миниатюру записи, мы просто указываем нужный размер в функции:
the_post_thumbnail( 'large' );
Хорошая новость в том, что хотя WordPress изменяет размеры всех загружаемых изображений, оригинальное изображение сохраняется нетронутым, и мы можем использовать его при необходимости. Для вывода оригинального изображения нужно использовать:
the_post_thumbnail('full');
Таким образом, проблема заключается в вашем файле темы. Вам нужно изменить код в файле темы, чтобы он выглядел примерно так.
Отключение изменения размеров
Через админ-панель
Хотя это напрямую не решает вашу проблему, но чтобы отключить автоматическое изменение размеров, выполните следующие действия:
- В
/wp-admin
перейдите в Настройки » Медиафайлы - В полях
Большой
,Средний
иМиниатюра
укажите нулевые значения (0
) для ширины и высоты. - Сохраните изменения.
Это предотвратит создание уменьшенных версий для будущих загрузок. :)
С помощью кода
Вы можете использовать функцию remove_image_size()
в вашем файле functions.php
, чтобы отключить все три стандартных размера изображений:
remove_image_size('large');
remove_image_size('medium');
remove_image_size('thumbnail');
Это остановит создание изображений указанных размеров.
Ссылки
the_post_thumbnail()
- Кодекс
