我的网站上有2个产品。其中,对于1个产品,如果用户选择的数量超过3个,我应该显示错误信息。但对于其他产品,数量没有限制。 我怎么能实现这个目标呢?
我使用了以下代码:
add_action( 'woocommerce_add_to_cart_validation', 'wc_add_to_cart_validation', 11, 3 );
function wc_add_to_cart_validation( $passed, $product_id, $quantity ) {
if ( $quantity > 3 ){
wc_add_notice( __( 'Only 3 or less quantities allowed, please contact us on (937) 606-4258.', 'woocommerce' ), 'error' );
$passed = false;
}
return $passed;
}
但是代码反映了这两种产品。 我希望仅在一个产品上执行操作 请帮忙
答案 0 :(得分:2)
要定位特定产品ID(您将在代码中定义),请尝试以下方式:
add_action( 'woocommerce_add_to_cart_validation', 'conditional_add_to_cart_validation', 15, 3 );
function conditional_add_to_cart_validation( $passed, $product_id, $quantity ) {
// HERE below define your specific product ID
$specific_product_id = 37;
if ( $quantity > 3 && $product_id == $specific_product_id ){
wc_add_notice( __( 'Only 3 or less quantities allowed, please contact us on (937) 606-4258.', 'woocommerce' ), 'error' );
$passed = false;
}
return $passed;
}
代码放在活动子主题(或活动主题)的function.php文件中。经过测试和工作。