Задача. В вариативных товарах магазина необходимо сделать недоступными для выбора опции варианты товаров, которых нет, закончились. Обычно, при выборе товара, которого нет, появляется сообщение «Нет в наличии». И бывает еще такие товары окладываются в корзину. Отключение опций закончившихся товаров может быть хорошим решением (Изображение №1).
Решение. Чтобы отключить возможность закончившихся вариаций товара, можно использовать хук 'woocommerce_variation_is_active'
в Коде №1. Вариации товаров, которых нет в наличии будут отображаться в списке опций, но выбрать их будет нельзя.
1 2 3 4 5 6 7 8 9 10 11 |
## Сделать неактивными вариации которые в запасе 0 шт function wpcraft_filter_woocommerce_variation_is_visible( $true, $instance ) { $variation = wc_get_product( $instance->get_id()); if ( $variation->get_stock_quantity() == 0 ) { return false; } return true; }; add_filter( 'woocommerce_variation_is_active', 'wpcraft_filter_woocommerce_variation_is_visible', 10, 4 ); |