我在WooCommerce中建立了一个商店,要求产品数量以6的步骤增加。我们设置它的方式与一个代码是依赖于每个产品蛞蝓个别蛞蝓。它可以很好地处理单一产品,但它会在可变产品上中断(添加第7项,然后继续以第6步增加产品数量)。
下面是我的代码:
add_filter( 'woocommerce_quantity_input_args', 'quantity_selected_number', 10, 2 );
function quantity_selected_number( $args, $product ) {
//global $product;
if ( ! is_cart() ) {
if ($product->get_slug()=="product-01-slug"){
$args['input_value'] = 6; // Start from this value (default = 1)
$args['max_value'] = 600; // Maximum quantity (default = -1)
$args['min_value'] = 6; // Minimum quantity (default = 0)
$args['step'] = 6; // Increment or decrement by this value (default = 1)
}
}
if ($product->get_slug()=="product-02-slug"){
// Cart's 'min_value' is 0
$args['input_value'] = 3;
$args['max_value'] = 260;
$args['step'] = 3;
$args['min_value'] = 3;
}
if ($product->get_slug()=="product-03-slug"){
// Cart's 'min_value' is 0
$args['input_value'] = 3;
$args['max_value'] = 260;
$args['step'] = 3;
$args['min_value'] = 3;
}
return $args;
}
你知道为什么会这样吗?是什么让它适用于各种产品?
1条答案
按热度按时间mlmc2os51#
要处理可变产品的产品变化,您需要一个附加的挂钩函数。
我还添加了另一个函数来处理Ajax添加到购物车。
下面我也重新检查了你的代码,因为有一些小错误。
请尝试以下操作:
代码放在子主题的functions.php文件中(或插件中)。测试和作品。
相关:在Woocommerce中设置产品级别的最小,最大和步骤