wpcache.ru wordpress WPCache.ru

Как отключить генерацию лишних размеров изображений в WordPress

Если в медиатеке быстро накапливаются десятки файлов на каждую картинку, проблема почти всегда не в загрузке изображений как таковой, а в автоматическом создании лишних размеров. WordPress сам генерирует несколько вариантов одного и того же изображения, а тема и плагины часто добавляют ещё свои размеры. В результате растёт расход диска, увеличивается время обработки при загрузке, а на слабом хостинге это заметно даже по нагрузке на CPU.

Полностью отключать все размеры обычно не нужно. Практичнее оставить только те, которые реально используются на сайте, и убрать всё остальное. Ниже — как понять, что именно создаётся, какие способы отключения работают в WordPress и что делать с уже накопленными файлами.

Какие размеры WordPress создаёт автоматически

После загрузки изображения WordPress обычно делает несколько копий в разных размерах. Базовый набор зависит от версии WordPress и настроек сайта, но чаще всего это размеры вроде thumbnail, medium, medium_large, large и дополнительные размеры темы или плагинов. Если включены современные форматы и обработка изображений, могут появляться и дополнительные варианты, но сама логика остаётся той же: один исходный файл превращается в несколько производных.

Проблема возникает, когда на сайте используются только один-два размера, а остальные лежат мёртвым грузом. Особенно это заметно на сайтах с большим количеством изображений: каталогах, блогах, новостных проектах, портфолио. Чем больше медиафайлов, тем ощутимее лишние мегабайты и лишняя работа при каждой загрузке.

Сначала проверьте, какие размеры действительно нужны

Перед отключением полезно понять, где на сайте реально используются изображения разных размеров. Если тема выводит миниатюры в карточках записей, а в контенте нужны только изображения для статьи, не стоит рубить всё подряд. Иначе можно получить растянутые картинки, пустые блоки или ухудшение внешнего вида.

Обычно достаточно ответить на три вопроса:

  • какой размер используется в превью записей и архивов;
  • какой размер нужен для изображений внутри контента;
  • есть ли отдельные размеры для слайдеров, галерей, блоков темы или виджетов.

Если вы не уверены, откройте несколько страниц сайта в браузере, посмотрите HTML через инструменты разработчика и сравните, какой файл подставляется в src и srcset. Это помогает понять, какие размеры действительно участвуют в вёрстке, а какие создаются зря.

Как отключить лишние размеры через настройки WordPress

Самый безопасный путь — сначала уменьшить число стандартных размеров в админке. Для этого откройте Настройки → Медиафайлы и проверьте значения для миниатюры, среднего и крупного размеров. Если какой-то размер не нужен, его можно уменьшить до минимального значения или привести к нулю, если ваша версия WordPress и тема корректно это переживают. Но здесь есть нюанс: не все темы и плагины одинаково хорошо работают с пустыми значениями, поэтому после изменения обязательно проверьте фронтенд.

Этот способ не отключает все производные изображения, но уже сокращает количество файлов, которые WordPress создаёт по умолчанию. Для многих сайтов этого достаточно, особенно если лишние размеры добавляла только стандартная конфигурация.

Убрать размеры, которые добавляет тема или плагин

Чаще всего основной «раздуватель» медиатеки — не сам WordPress, а тема и плагины. Они регистрируют дополнительные размеры через add_image_size(), чтобы подставлять картинки в карточках, слайдерах, блоках и других элементах интерфейса. Если такой размер нигде не используется, его можно отключить.

Для этого в дочерней теме или в собственном небольшом плагине используют фильтр intermediate_image_sizes_advanced. Он позволяет убрать ненужные размеры до того, как WordPress начнёт их генерировать. Пример ниже отключает несколько стандартных размеров, но перед использованием его нужно адаптировать под ваш сайт:

add_filter('intermediate_image_sizes_advanced', function ($sizes) {
    unset($sizes['medium_large']);
    unset($sizes['1536x1536']);
    unset($sizes['2048x2048']);
    return $sizes;
});

Здесь важно не копировать код вслепую. На некоторых сайтах размеры 1536x1536 и 2048x2048 реально используются темой или для адаптивных изображений. Если убрать нужный размер, WordPress перестанет его создавать, но уже существующие страницы могут начать отдавать неподходящие файлы.

Если нужно отключить один конкретный размер, который добавляет тема или плагин, сначала найдите его регистрацию в коде. Обычно это строка с add_image_size(). После этого можно убрать сам вызов в дочерней теме или отключить соответствующий модуль плагина, если у него есть такая настройка.

Как полностью остановить создание новых размеров для загружаемых изображений

Иногда задача стоит жёстче: нужен только оригинал без дополнительных копий. Технически это возможно, но подходит не всем. Такой вариант имеет смысл на сайтах, где изображения используются в одном фиксированном размере или где обработка картинок вынесена на CDN, в image proxy или в отдельный сервис.

Для полного отключения можно использовать фильтр intermediate_image_sizes_advanced и вернуть пустой массив:

add_filter('intermediate_image_sizes_advanced', function () {
    return [];
});

Это остановит генерацию всех промежуточных размеров при загрузке новых изображений. Но у такого решения есть очевидный минус: если тема рассчитывает на миниатюры, она начнёт подставлять оригинал или ломать сетку. Поэтому перед таким шагом нужно убедиться, что сайт не зависит от разных размеров изображений в карточках, галереях и адаптивной вёрстке.

Что делать с уже созданными лишними файлами

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

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

После очистки проверьте несколько типовых страниц: главную, архив, запись, страницу с галереей и мобильную версию. Если вёрстка не сломалась, а в папке uploads больше не появляются новые лишние файлы, значит настройка сработала.

Как проверить, что WordPress больше не создаёт ненужные миниатюры

Самый надёжный способ проверки — загрузить новое изображение и посмотреть, сколько файлов появилось рядом с оригиналом в папке загрузок. Если раньше одна картинка порождала пять-семь копий, а после настройки остались только нужные размеры, цель достигнута.

Дополнительно можно открыть запись в медиатеке и сравнить доступные размеры изображения. Если в интерфейсе остались только те варианты, которые используются темой, значит лишние размеры действительно отключены. На фронтенде стоит проверить, что изображения не стали слишком тяжёлыми и не потеряли качество в местах, где нужен отдельный размер для превью.

Когда лучше не отключать генерацию полностью

Полный отказ от миниатюр удобен не всегда. Если сайт использует адаптивные изображения, сетки карточек, слайдеры или блоки с разными пропорциями, несколько размеров нужны для нормальной загрузки и аккуратного отображения. В таких случаях лучше не отключать всё подряд, а оставить только рабочий набор: один размер для превью, один для контента и, при необходимости, ещё один для крупных блоков.

Именно такой подход обычно даёт лучший баланс: медиатека не разрастается без причины, сервер не тратит лишнее время на обработку, а сайт сохраняет нормальное качество и скорость загрузки. Если тема или плагины добавляют слишком много размеров, сначала отключайте только явно лишние, а не весь механизм целиком.

Если нужно быстро почистить сайт от лишних дублей и служебных данных, в экосистеме WPShop есть Clearfy Pro. Но даже с такими инструментами принцип остаётся тем же: сначала понять, какие размеры реально используются, потом отключить ненужные и только после этого удалять старые файлы.

×

AI-плагин от WPShop.ru

анализирует конкурентов

пишет статьи

готовит SEO

генерирует изображения

и еще кое-что...
WPGPT
Плагин, который наполняет ваш сайт WordPress
Узнать больше