
🔄 Как регенерировать миниатюры в WooCommerce (5 шагов)
Поменяли тему WooCommerce, и картинки товаров поплыли? Знакомо. После смены шаблона старые миниатюры остаются нарезанными под размеры предыдущей темы, а новые требуют совсем других пропорций. Итог: где-то обрезка, где-то растяжение, где-то пустота вместо избранного изображения.
Ручная правка каждого товара, путь в никуда, если в каталоге сотни позиций. К счастью, WordPress даёт три рабочих способа пересоздать миниатюры автоматически: плагин, встроенный механизм WooCommerce и WP-CLI. Каждый, под свою ситуацию.
Разберём все пять шагов, от самого простого до продвинутого.
💡 Быстрый обзор:
- Установите бесплатный плагин Regenerate Thumbnails из репозитория WordPress.org, он закрывает подавляющее большинство задач по регенерации.
- Запустите полную регенерацию через Tools → Regenerate Thumbnails, плагин обработает все изображения за один проход.
- Для одного изображения используйте регенерацию из медиабиблиотеки, быстро и без массовой пересборки.
- Если у вас свежая версия WooCommerce (3.3+), включите встроенную фоновую регенерацию, она срабатывает автоматически при изменении размеров.
- Для крупных магазинов с shell-доступом используйте WP-CLI
wp media regenerate, быстрее плагина и без нагрузки на HTTP.
Шаг 1: Установите плагин Regenerate Thumbnails
Это бесплатный плагин с миллионом активных установок на WordPress.org, поддерживаемый командой Automattic. Он делает ровно то, что обещает в названии, без лишнего интерфейса и настроек.
Перейдите в Plugins → Add New, введите в поиск «Regenerate Thumbnails», нажмите Install Now, а затем Activate. Плагин не требует настройки, после активации пункт Tools → Regenerate Thumbnails сразу появляется в админке.
Обратите внимание: плагин работает с оригинальными загруженными файлами. Он не пережимает исходники, создаёт новые миниатюры под текущие размеры, заданные в настройках темы и Settings → Media. Старые миниатюры при этом удаляются опционально (галочка «Delete old, unused thumbnails»).
Шаг 2: Запустите полную регенерацию всех миниатюр
Откройте Tools → Regenerate Thumbnails. Интерфейс минималистичный: одна кнопка и три опции.

Перед запуском убедитесь, что выбрана опция Skip regenerating existing correctly sized thumbnails, это сэкономит время: плагин пропустит миниатюры, которые уже совпадают по размерам.
Нажмите Regenerate All Thumbnails. Плагин начнёт поочередно обрабатывать каждое изображение в медиабиблиотеке. Для сотни картинок процесс занимает 2-3 минуты. Для нескольких тысяч, до 15-20 минут.
Не закрывайте вкладку браузера, пока идёт регенерация. Если страница обновится сама, ничего страшного: уже обработанные изображения останутся пересобранными, плагин просто продолжит с того места, где остановился.
После завершения вы увидите сводку, сколько миниатюр пересоздано успешно, а сколько с ошибкой. Ошибки обычно связаны с битыми файлами (повреждённый JPEG или нестандартный формат), их видно в логе.
Результат необратим. Откатить пересобранные миниатюры к предыдущим версиям нельзя, поэтому перед массовой регенерацией сделайте бэкап сайта.
Шаг 3: Восстановите одно конкретное изображение
Массовая регенерация не всегда нужна. Если вы заменили одну карточку товара и хотите пересобрать только её миниатюры, плагин позволяет сделать это точечно.
Зайдите в Media → Library, переключитесь в режим списка (List View). Напротив каждого изображения в строке появится ссылка Regenerate Thumbnails.

Нажмите на неё, и плагин пересоберёт миниатюры только для этого файла. Время обработки одного изображения, 1-2 секунды.
Этот же метод работает для пакетной регенерации: отметьте галочками нужные изображения, выберите в выпадающем меню массовых действий Regenerate Thumbnails и нажмите Apply. Удобно, когда после правок затронуто несколько десятков картинок, а не весь каталог.
Кстати, то же самое доступно на странице редактирования отдельного вложения: кликните по изображению в медиабиблиотеке, в боковой панели появится кнопка регенерации.
Шаг 4: Включите встроенную регенерацию WooCommerce
С версии WooCommerce 3.3 в ядре появилась фоновая регенерация миниатюр. Она срабатывает автоматически в двух случаях: когда вы меняете размеры изображений через кастомайзер и публикуете их, или когда переключаете тему.
Механизм работает так: WooCommerce определяет расхождение между текущими размерами миниатюр и заданными, ставит задачу в фоновую очередь и постепенно пересобирает всё, что нужно. В кастомайзере при этом доступен живой предпросмотр, изменения видны сразу, ещё до публикации.
Проверить, запущена ли очередь, можно в WooCommerce → Status → Logs: выберите лог wc-background-regeneration. Если процесс активен, в админке появится уведомление с кнопкой отмены.
Когда встроенный механизм не справляется (например, сайт за BasicAuth, фоновая очередь не может выполнить HTTP-запросы к себе), его отключают фильтром:
1 add_filter( 'woocommerce_background_image_regeneration', '__return_false' );
После этого регенерацию запускают вручную, через плагин или WP-CLI.
Для большинства магазинов на свежих версиях WooCommerce этого встроенного механизма достаточно. Плагин Regenerate Thumbnails нужен, когда вы хотите контролировать процесс вручную или очистить старые неиспользуемые миниатюры.
Шаг 5: Регенерируйте через WP-CLI (для крупных магазинов)
Командная строка, самый быстрый способ, потому что нет накладных расходов на HTTP-запросы и браузерный интерфейс. Подходит, если у вас доступ по SSH и установлен WP-CLI.
Базовая команда для регенерации всех миниатюр:
1 wp media regenerate --yes
Флаг --yes пропускает подтверждение. Без него WP-CLI запросит подтверждение для каждого вложения, на тысячах изображений это бессмысленно.
Для одного вложения укажите его ID:
1 wp media regenerate 123
Полезная опция --image_size задаёт конкретный размер для регенерации. Например, если тема добавила новый размер shop_catalog, а остальные трогать не нужно:
1 wp media regenerate --image_size=shop_catalog
Для очень больших магазинов (десятки тысяч товаров) запускайте команду внутри screen или tmux, чтобы процесс не оборвался при разрыве SSH-сессии. И обязательно сделайте бэкап перед запуском, WP-CLI, как и плагин, необратимо перезаписывает миниатюры.
⁉️🤔 Частые вопросы
Нужно ли регенерировать миниатюры после обновления WooCommerce?
Обновление WooCommerce само по себе не меняет размеры изображений, регенерация не требуется. Но если обновление включает сброс настроек кастомайзера или вы одновременно обновили тему, проверьте размеры миниатюр и при расхождении запустите регенерацию.
Что делать, если регенерация зависла?
Обновите страницу Tools → Regenerate Thumbnails. Плагин продолжит с того же места, он обрабатывает изображения по одному и не теряет прогресс. Если зависание повторяется на одном и том же файле, вероятно, исходное изображение повреждено. Скачайте его из медиабиблиотеки, пересохраните в графическом редакторе и загрузите заново.
Можно ли регенерировать миниатюры на тестовом сайте, а потом перенести на боевой?
Технически да, скопируйте папку
/wp-content/uploads/после регенерации. Но это рискованно: миниатюры жёстко привязаны к размерам, заданным в теме и Settings → Media. Если на боевом сайте настройки отличаются, миниатюры снова не совпадут. Надёжнее запустить регенерацию непосредственно на боевом сервере после бэкапа.
Чем WP-CLI лучше плагина?
Скоростью. Плагин делает HTTP-запрос к самому себе через AJAX, каждый файл это один запрос. WP-CLI работает напрямую с файловой системой и базой данных, без веб-серверной прослойки. На тысяче изображений разница составляет минуты против получаса. Но WP-CLI требует shell-доступа, который есть не на всех хостингах.
Удалит ли регенерация оригиналы изображений?
Нет. И плагин, и WP-CLI, и встроенный механизм WooCommerce работают только с миниатюрами, копиями, сгенерированными из оригинала под конкретные размеры. Исходный загруженный файл остаётся нетронутым. Именно поэтому регенерацию можно запускать повторно сколько угодно раз.
Стоит ли удалять старые неиспользуемые миниатюры?
Стоит, если на хостинге заканчивается дисковое пространство. Галочка «Delete old, unused thumbnails» в плагине Regenerate Thumbnails найдёт и удалит миниатюры, размеры которых больше не зарегистрированы ни в теме, ни в Settings → Media. Перед этим обязательно сделайте бэкап, восстановить удалённые файлы можно будет только из резервной копии.
Что делать, если после регенерации картинки всё равно не в порядке?
Пройдите короткий чек-лист. Первое: откройте Settings → Media и Appearance → Customize → WooCommerce → Product Images, сверьте размеры. Если они не совпадают с теми, что прописаны в теме, регенерация даст не те миниатюры, которые ожидает шаблон. Второе: проверьте, не кеширует ли старые миниатюры плагин кеширования или CDN, сбросьте кеш. Третье: откройте исходный файл из медиабиблиотеки, если сам оригинал низкого разрешения, никакая регенерация качество не поднимет.
Для большинства ситуаций хватает бесплатного Regenerate Thumbnails. Если магазин крупный и регенерация нужна регулярно, освойте WP-CLI, одна команда экономит десятки минут. А на свежих версиях WooCommerce фоновый механизм часто срабатывает сам, достаточно просто опубликовать новые размеры в кастомайзере.



