我用wc-variations-radio-buttons-master把下拉菜单改成了单选按钮,不同的颜色实际上也是单选按钮。
目前的link产品有12
这样的变化,有产品而不是其他。我可以解释一些组合,如Silver,Matching upholstery,VC,RegularSeat
和Silver,Matching upholstery,ACC,RegularSeat
有产品,而Silver,Matching upholstery,Regular,RegularSeat
没有产品现在我想隐藏Regular
选项从当前的场景and all other such option which have not product
。
我的意思是显示那些有产品的单选按钮,如果没有,然后隐藏不相关的单选按钮
产品link
4条答案
按热度按时间pobjuy321#
如果我正确理解了你的问题,你希望woocommerce阻止用户选择可变产品上的某些选项组合,除非所选选项的变体实际存在并且有库存?
这可能是由于woocommerce_ AJAX _variation_threshold。如果您的产品包含的变化超过阈值指定的数量,woocommerce将等待用户选择所有变化选项后再确定所选选项组合是否有效(有库存、存在等)。如果用户选择的组合无效或没有instock,您将获得
抱歉,没有符合您选择的产品。请选择其他组合
假设您有一个产品,您可以设置以下属性:
内饰、底座、扶手头枕、靠背
这是5不同的属性。如果这些属性中的每一个都有5个选项,则假设用户必须选择所有5个选项,则有25种不同的可能组合。如果用户不必选择所有5选项,那么还有更多可能的组合。
因此,即使您实际上只为该产品创建了2个变体,其woocommerce_ AJAX _variation_threshold将是25,这意味着25可能的选项(变体)。
我想默认情况下woocommerce_ AJAX _variation_threshold设置为10。
因此,要修复(filter)这个问题,请将woocommerce_ AJAX _variation_threshold设置为更高的值。如果你的产品有30种可能的组合(无论它们是否存在),请将阈值设置为高于30的值,例如1111。
您可以在函数中使用下面的代码片段。php文件。
aoyhnmkz2#
请检查变异矩阵表,以正确匹配所有变异的选择。...
例
2x2表示11 12 21 22
3x3
111 122 113 221 222 223 331
3htmauhk3#
WooCommerce中导致这种情况的一个怪癖是,您的所有变体都没有价格,系统并不总是告诉您需要这样做,因此可能会发生意想不到的事情。请检查您的变化数据,并确保所有的变化都有一个价格。
3qpi33ja4#
默认情况下,如果Variable产品的变体少于30个,则用于在前端选择变体的下拉列表将是动态的。”
https://woocommerce.com/document/change-limit-on-number-of-variations-for-dynamic-variable-product-dropdowns/