WooCommerce

WooCommerce可变产品变种的数量限制

WooCommerce可变产品的变种是什么?一件颜色是红色尺码为XL的衣服就是一个变种。可变产品最多能有多少变种?没有限制,但的确存在一个数量,会影响变种下拉列表的行为。这个数量是30个。

WooCommerce可变产品变种的数量限制 - 下拉列表

变种下拉列表的两种行为

行为1:动态展示商品属性。

这是我们平时看到的模式,从程序角度讲,就是把variations的所有可能直接以json格式放到add to cart表单上,用js读取并动态渲染。

用人话讲,就是如果一件红色的衣服没有XL尺码,那你选择红色时,size列表里就没有XL这个选项。

行为2:静态展示所有属性

当一个产品的变种数量超过30时,为了性能考虑,就会把所有的属性都列出来,不管有没有对应的产品,add to cart表单上的json数据没有了。这时,你选择红色,就能看见所有的size。当你选择了颜色和尺码后,程序会通过ajax请求获取这个组合的价格库存等。看下面的图你就明白了。

如何改变这个数量限制

默认是30,想改变的话,在子主题的functions.php里加入下面的代码。

function custom_wc_ajax_variation_threshold( $qty, $product ) {
  return 40;
}

add_filter( 'woocommerce_ajax_variation_threshold', 'custom_wc_ajax_variation_threshold', 10, 2 );

参考文章:Change Limit on Number of Variations for Dynamic Variable Product Dropdowns