查找支持WooCommerce按分类设置总购买最大数量的plugin
WooCommerce 特定分类总购买量限制解决方案
插件实现方式
- 你需要的是支持分类维度总购买量限制的插件,而非仅支持单商品购买上限的工具,目前主流的WooCommerce购物车规则类插件均支持该配置:
- 仅需限制单订单内分类总购买量的场景,在插件规则配置页选择「产品分类」作为匹配条件,设置「该分类下商品总数量上限」为你需要的数值即可生效
- 如需限制用户账号生命周期内该分类的累计购买总上限,选择带用户购买记录统计功能的订单限制类插件即可实现
无插件自定义代码实现
如果不想额外安装插件,可直接将以下代码添加到当前激活主题的functions.php文件中,即可实现需求:
// 限制指定产品分类购物车总购买数量 add_action( 'woocommerce_check_cart_items', 'restrict_specific_category_total_purchase' ); function restrict_specific_category_total_purchase() { // 自定义配置项 $restricted_category_slug = 'specialbooks'; // 替换为你要限制的分类slug $max_allowed_quantity = 3; // 替换为你要设置的最大购买总数量 $category_total_count = 0; // 遍历购物车统计目标分类商品总数量 foreach ( WC()->cart->get_cart() as $cart_item ) { if ( has_term( $restricted_category_slug, 'product_cat', $cart_item['product_id'] ) ) { $category_total_count += $cart_item['quantity']; } } // 超出限制时抛出错误提示阻止结算 if ( $category_total_count > $max_allowed_quantity ) { wc_add_notice( sprintf( 'SpecialBooks分类下的商品单订单最多可购买%d件,当前已选择%d件', $max_allowed_quantity, $category_total_count ), 'error' ); } }
- 代码调整说明:
- 如需同时限制多个分类,可将
$restricted_category_slug改为数组格式,配套调整匹配逻辑即可 - 提示文案可根据你的站点需求自行修改
- 如需同时限制多个分类,可将
内容的提问来源于stack exchange,提问作者ad_on_is
相关产品推荐
相关产品推荐

