Рассмотрим вопрос запрета автоматической генерации различных размеров изображений в WordPress. Как известно, при загрузке изображения WordPress создает множество его миниатюр с разными размерами (например, 150×150, 300×300 и т.д.), чтобы использовать их в нужном месте сайта, в т.ч. на десктопе и мобильных устройствах. Однако в современном веб-дизайне такая практика уже не актуальна. Создание множества копий занимает место на сервере и расходует дисковое пространство без особой необходимости. В этой статье мы рассмотрим способы отключения автоматической генерации изображений. Такой подход подойдет как новичкам, только начинающим работу с WordPress, так и опытным пользователям, столкнувшимся с накоплением большого количества ненужных файлов в папке uploads.
Будем использовать плагин регенерации миниатюр Regenerate Thumbnails, плюс вставка небольшого куска кода в файл темы functions.php. Итак, сначала устанавливаем и активируем плагин Regenerate Thumbnails.

Заходим в его настройки и видим все размеры миниатюр, которые в настоящее время зарегистрированы и используются на сайте:

Этот плагин показывают все возможные размеры миниатюр, которые у нас существуют на сайте, то есть те миниатюры которые создает движок WordPress и установленная тема. Наша задача — запретить регенерацию вот этих всех миниатюр и пересоздать заново все файлы с изображениями.
В панеле управления (консоль) идем во внешний вид — редактор тем. Выбираем тему для изменения (желательно все изменения проводить в дочерней теме). Переходим в нашу в файл function.php, опускаемся в редакторе в самый его низ и добавляем следующий код:
// * * Запрет создания миниатюр *//
function vel_remove_all_image($size){
unset($size['thumbnail']);
unset($size['medium']);
unset($size['medium_large']);
unset($size['large']);
unset($size['1536x1536']);
unset($size['2048x2048']);
unset($size['slider-img']);
unset($size['anons']);
unset($size['crop']);
unset($size['categories']);
}
add_filter('intermediate_image_sizes_advanced', 'vel_remove_all_image');
В нем прописаны все размеры наших изображений. В квадратные скобки кода копируем те названия миниатюр, которые зарезервированы (см. настройки плагина Regenerate Thumbnails). Таким образом данный код запрещает генерацию вот этих всех миниатюр. Сохраняем изменения в редакторе function.php (жмем “Обновить файл”). Далее возвращаемся в наш плагин и убираем первую галочку (Пропустить пересоздание существующих миниатюр с правильным размером) и ставим вторую галочку (Освободить место на диске удалением старых незарегистрированных размеров миниатюры). Это может привести к ошибкам загрузки изображений, поэтому на всякий случай сделайте бэкап файлов сайта перед данной процедурой.

Жмем на «Пересоздать миниатюры для всех вложений» (в моем примере их 1622 шт.) и ожидаем завершения процесса. Плагин Regenerate Thumbnails нам больше не понадобится. Его можно деактивировать и удалить. После для проверки заходим на хостинг в файловый менеджер (wp-content — uploads) и видим, что “паразитных” миниатюр больше нет.



