1

所以我想我可以用一种相当直截了当的方式来解决这个问题,但这让我非常困惑:我正在开一家商店来销售字体。这些字体可用于影响价格的各种许可证:例如:

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

...ETC。由于商店出售包装和系列以及个人重量和样式,所有这些变化都可以根据价格、附件等进行定制。另外,由于某些字体的许可,并非所有字体都可以在相同的情况下使用许可证。

问题:如果用户选择Desktop: 1-5 Users,那么绝对不应该要求他们选择 Web 许可证。但是,如果我尝试将一种字体添加到我的购物车中,但Desktop: 1-5 Users没有Web选择,它会失败。

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

作为对此的补充,我尝试使用 jQuery 将任何未选择的选择值设置为“null”;所以,用户选择Desktop: 1-5 UsersWeb下拉菜单自动隐藏,值设置为“null”。就产品将被添加到购物车而言,这有效(有点),但它显示为:

字体名称

  • 桌面:1-5 个用户
  • 网页:

同样,我可以编辑模板/woocommerce/single-product/add-to-cart/variable.php以不在null站点上显示属性,但它仍然出现在电子邮件中,在后端的顺序等中。理想情况下,我想要一种方法来简单地不选择所有许可证属性作为先决条件将字体添加到购物车。

希望我只是没有在这里看到树木的木材,并且错过了一些明显而简单的东西。

4

2 回答 2

0

最好将许可证拆分为两个单独的产品 - Web 和桌面。

或者,也许您可​​以使用 Woothemes产品分组扩展之一链接或组合它们。或者,额外产品选项扩展可能适合您的需求。额外产品选项为每个订单添加额外的元数据,您可以在产品页面上使用条件逻辑来帮助引导用户找到最佳产品/价格匹配。

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

于 2015-03-25T12:24:19.663 回答
0

考虑添加为默认值:

  • 没有网络许可证
  • 没有桌面许可证

它将产生:

桌面

  • 没有桌面
  • 1-5 个用户
  • 6-10 位用户
  • 10+ 用户

网络

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

在 woocommerce 中,您可以选择无网络/桌面作为默认变体,并取消选中在产品页面上可见。

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

于 2017-11-05T12:23:47.927 回答