• Никакой политики на форуме. Иначе - бан!
  • Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!
  • Темы озаглавленные с маленькой буквы или капсом удаляются без предупреждения!

Решено Автоматическое выключение вариаций Woocommerce

AlexWorkStream

Новичок
Подскажите пожалуйста, каким образом можно скрывать нулевые остатки вариаций в самой карточке товара и при этом оставить отображение в каталоге? Или чтобы нулевые вариации автоматически выключались.
 

artemkomarov

Специалист
Местный
Данный фильтр убирает возможность выбора вариации которой нет в наличии

PHP:
function filter_woocommerce_variation_is_visible( $true, $instance ) {
    $variation = get_product( $instance->variation_id );
    if ( $variation->get_stock_quantity() == 0 ) {
        return false;
    }
    return true;
};
add_filter( 'woocommerce_variation_is_active', 'filter_woocommerce_variation_is_visible', 10, 4 );
 

AlexWorkStream

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

artemkomarov

Специалист
Местный
Долго и лень писать код) есть специальный фильтр который выводит сам список вариаций. нужно просто сделать дополнительную проверку на наличие через аргументы. Тут подробнее в исходниках все прописано

https://docs.woocommerce.com/wc-api...wn_variation_attribute_options.html#2034-2092
 

AlexWorkStream

Новичок
Долго и лень писать код) есть специальный фильтр который выводит сам список вариаций. нужно просто сделать дополнительную проверку на наличие через аргументы. Тут подробнее в исходниках все прописано

https://docs.woocommerce.com/wc-api...wn_variation_attribute_options.html#2034-2092
Спасибо конечно, но вот только я в этом не силен(((
 
Сверху Снизу