Автоматическая очистка неиспользуемых вариаций товаров в WooCommerce

|

Диагностика проблемы с вариациями в WooCommerce

В WooCommerce при создании товаров с вариациями часто остаются «мертвые» вариации — те, которые не используются или неактивны, но продолжают занимать место в базе данных и могут замедлять работу сайта. Это особенно актуально для магазинов с большим ассортиментом и частыми обновлениями.

Как определить, что в вашем магазине есть неиспользуемые вариации:

Пошаговое решение: автоматическое удаление вариаций по условию

Реализуем удаление вариаций, которые соответствуют определённым критериям, например, статус "trash" или отсутствие запаса. Для этого используем WP-CLI или PHP-код с хуком, который можно запускать через WP-Cron.

Пример PHP-функции для удаления вариаций с нулевым запасом

function wc_delete_zero_stock_variations() {
    $args = [
        'post_type'      => 'product_variation',
        'posts_per_page' => -1,
        'meta_query'     => [
            [
                'key'     => '_stock',
                'value'   => '0',
                'compare' => '=',
                'type'    => 'NUMERIC'
            ]
        ]
    ];

    $variations = get_posts( $args );

    foreach ( $variations as $variation ) {
        wp_delete_post( $variation->ID, true );
    }
}

// Запуск функции вручную
wc_delete_zero_stock_variations();

Автоматизация через WP-Cron

Добавим задачу, которая будет запускать очистку каждую неделю:

function schedule_wc_variation_cleanup() {
    if ( ! wp_next_scheduled( 'wc_variation_cleanup_hook' ) ) {
        wp_schedule_event( time(), 'weekly', 'wc_variation_cleanup_hook' );
    }
}
add_action( 'wp', 'schedule_wc_variation_cleanup' );

add_action( 'wc_variation_cleanup_hook', 'wc_delete_zero_stock_variations' );

Проверка результата после внедрения

Частые ошибки и как их исправить

Практические советы по безопасности и производительности

Сравнение методов удаления вариаций

МетодПреимуществаНедостатки
Удаление вручную через админкуПростота, контрольМедленно, не подходит для большого количества вариаций
PHP-скрипт с WP-CronАвтоматизация, гибкость условийТребует настройки, возможны ошибки в логике
WP-CLI командыБыстро, подходит для разработчиковНеудобно для пользователей без SSH доступа
Как создать уникальные URL для товаров в WooCommerce: практические решения
09.01.2026
Как создать динамическую картинку из текста в WordPress с примерами кода
25.02.2026
Как автоматически удалять неактивных пользователей в WordPress без плагинов
17.07.2026
Как использовать хуки и фильтры в WordPress для изменения выводимых данных
11.12.2025
Как отложить обновление тем и плагинов в WordPress: практические решения
15.02.2026
×
до 3225₽

WPShop - честная партнерка!

Зарабатывай с каждой продажи

Подключиться ⋙