WooCommerce:产品变体不需要选择所有选项

时间:2014-09-27 15:25:24

标签: php wordpress woocommerce variations

所以我认为我可以用一种相当简单的方式解决这个问题,但它让我感到非常困惑:我正在建立一个商店来销售字体。这些字体可用于影响价格的各种许可证中:例如:

  • 桌面
    • 1-5用户
    • 6-10用户
    • 10+用户
  • 网络
    • 1个域名
    • 最多5个域
    • 最多10个域

...等。由于商店正在销售包装和销售收藏品以及个人权重和样式,所有这些变化都可以根据它们的价格,附加文件等进行定制。此外,由于某些字体的许可,并非所有字体都在相同的许可下可用。

问题:如果用户选择Desktop: 1-5 Users,则不应要求他们 选择Web许可证。但是,如果我尝试在我的购物车中添加仅Desktop: 1-5 Users并且未选择Web的字体,则会失败。

在后端,我目前将所有Desktop个变体设置为“任意网络...”,反之亦然,但它没有任何区别。

作为对此的补充,我尝试使用jQuery将任何未选择的选择值设置为'null';所以,用户选择Desktop: 1-5 Users; Web下拉列表会自动隐藏,值设置为“null”。只要产品将被添加到购物车中,这种情况就会发生(但有点像),但它显示为:

FONTNAME

  • 桌面: 1-5用户
  • 网址: null

同样,我可以在/woocommerce/single-product/add-to-cart/variable.php中修改模板,以便不在网站上显示null属性,但它仍会显示在电子邮件中,按照后端的顺序等等。理想情况下我想要一个简单地没有选择所有许可证属性作为向购物车添加字体的先决条件的方法。

希望我在这里看不到树木的木材,错过了一些明显而简单的东西。

2 个答案:

答案 0 :(得分:0)

将许可证拆分为两个单独的产品(网络和桌面)可能会更好。

或许您可以使用其中一个Woothemes product grouping extensions来链接或组合它们。或者,Extra Product Options扩展名可能适合您的需求。 Extra产品选项为每个订单添加了额外的元数据,您可以在产品页面上使用条件逻辑来帮助指导用户获得最佳的产品/价格匹配。

祝你好运!电子商务比看起来更难!

答案 1 :(得分:0)

考虑添加为默认值:

  • 没有网络许可
  • 没有dekstop许可证

它会产生:

桌面

  • 无桌面
  • 1-5用户
  • 6-10用户
  • 10+用户

网络

  • 没有网络
  • 1个域名
  • 最多5个域
  • 最多10个域

在woocommerce中,您不能选择任何网络/桌面作为默认变体,并取消选中产品页面上的内容。

类似的未来可以通过挂钩到woocommerce过滤器来实现PHP代码,但在我看来,使用产品配置更加优雅。