WordPress по умолчанию генерирует несколько копий загружаемых изображений разных размеров для адаптивного отображения и оптимизации загрузки страниц. Однако в некоторых случаях это нежелательно: например, если вы хотите использовать изображения в их оригинальном размере без изменений, либо если автоматическое создание копий занимает лишнее место на сервере.
Почему WordPress изменяет размер изображений автоматически
При загрузке изображения WordPress создает несколько версий файла с разными размерами, основанными на настройках темы и параметрах в админке. Это помогает сайту адаптироваться под разные экраны и улучшает скорость загрузки за счет подбора оптимального размера.
Но если вы хотите полностью контролировать размеры изображений или использовать сторонние решения для оптимизации, автоматическое создание копий может мешать.
Кроме того, WordPress 5.3 и выше по умолчанию создает изображение размера 1536x1536 (big size) и 2048x2048 (huge size), которые занимают место и могут быть лишними.
Как отключить автоматическое создание дополнительных размеров изображений
Чтобы отключить создание стандартных размеров, можно воспользоваться фильтрами и хуками в functions.php вашей темы или в собственном плагине. Рассмотрим пример кода для wp-kurs.ru, который отключит генерацию всех дополнительных размеров.
function wp_kurs_disable_image_sizes() {
// Отключаем стандартные размеры
remove_image_size('thumbnail');
remove_image_size('medium');
remove_image_size('medium_large');
remove_image_size('large');
remove_image_size('1536x1536'); // big size
remove_image_size('2048x2048'); // huge size
}
add_action('init', 'wp_kurs_disable_image_sizes');
// Отключаем добавление этих размеров при загрузке
function wp_kurs_filter_image_sizes($sizes) {
unset($sizes['thumbnail']);
unset($sizes['medium']);
unset($sizes['medium_large']);
unset($sizes['large']);
unset($sizes['1536x1536']);
unset($sizes['2048x2048']);
return $sizes;
}
add_filter('intermediate_image_sizes_advanced', 'wp_kurs_filter_image_sizes');
Этот код удалит все стандартные размеры, после чего WordPress будет сохранять только оригинал изображения.
Удаление кастомных размеров изображений из темы и плагинов
Если ваша тема или установленные плагины добавляют собственные размеры через add_image_size(), их тоже необходимо отключить. Для этого в вашем плагине или functions.php темы добавьте:
function wp_kurs_remove_custom_image_sizes() {
global $_wp_additional_image_sizes;
if (isset($_wp_additional_image_sizes)) {
foreach ($_wp_additional_image_sizes as $size => $details) {
remove_image_size($size);
}
}
}
add_action('init', 'wp_kurs_remove_custom_image_sizes', 20);
Это удалит все дополнительные пользовательские размеры.
Практические советы и плагины для управления размерами изображений
Если вы хотите более гибко управлять размерами или автоматически оптимизировать изображения, рассмотрите следующие плагины:
- Stop Generating Unnecessary Thumbnails — плагин для отключения создания ненужных размеров.
- Clearfy Pro — расширенный инструмент для оптимизации и управления настройками WordPress, включая изображения.
Также можно использовать плагины для сжатия и оптимизации изображений, например, Imagify или ShortPixel, которые работают с оригинальными файлами без необходимости создавать множество копий.
Как удалить уже созданные лишние размеры изображений
Если у вас уже скопилось много ненужных размеров, есть смысл их удалить, чтобы освободить место на сервере. Для этого можно использовать плагин Media Cleaner или выполнить удаление через WP-CLI команду:
wp media regenerate --skip-new --only-missing
Или вручную удалить файлы из папки uploads, но будьте осторожны с этим методом.
Заключение по теме отключения автоматического изменения размера изображений в WordPress
Отключение автоматического создания дополнительных размеров изображений — полезная практика для тех, кто хочет полностью контролировать медиафайлы и экономить место на сервере. Используя описанные хуки и фильтры, вы сможете добиться нужного результата без сторонних плагинов или с их помощью.
Если вы хотите более простой способ — попробуйте плагин Clearfy Pro, который предлагает удобный интерфейс для управления размерами изображений и другими настройками.