php - 根据产品属性条款有条件地应用 WooCommerce 优惠券
问题描述
我试图从优惠券折扣中排除一些具有特定产品属性的产品变体。
就我而言,我的目标是产品属性“finish”设置为“Classic Frame”或“Box Frame”术语的产品变体。
我尝试使用“从 Woocommerce 中的优惠券使用中排除具有 2 个特定属性术语的变体”答案代码,当产品变体的产品属性“完成”设置为“经典框架”或“框框”时,它确实使优惠券无效学期。
但这也使优惠券对于添加到购物车的任何其他物品都无效。
例如,如果购物车中有 3 件商品:
- 项目 1:具有“经典框架”属性 ==> 优惠券不适用于该项目
- 项目 2:具有“框框”属性 ==> 优惠券不适用于该项目
- 第 3 项:具有“松散”属性 ==> 优惠券应该对此商品有效
所以我想要的是优惠券折扣仅适用于其他项目。
非常感谢任何帮助。
解决方案
“从 Woocommerce 中的优惠券使用中排除具有 2 个特定属性术语的变体”答案代码的目的是,如果有任何产品变体为“完成”产品属性设置了“经典框架”或“框框”术语, 则使优惠券无效(用于变化)。
是的,即使有其他物品没有它,它也会使优惠券无效,这是正确的行为。
为什么?
因为在使用属性时,带有“百分比折扣”或“固定购物车折扣”的(全球购物车)优惠券不允许仅应用于某些购物车项目,这意味着某些产品变体,而不能应用于其他
$is_valid
产品。如果您使用“排除产品 IDS”优惠券属性也是一样,因为它不处理产品变体 ID。
也许存在一个扩展优惠券可能性的商业插件,允许将产品变体 IDS(添加一个可用的过滤器挂钩)排除到该扩展功能中。
推荐阅读
- react-native - Websocket 服务始终运行
- node.js - 在加载 browersify 隐蔽的 npm 包并在脚本标签中使用它时出错?
- reactjs - 如何跟踪用户是否登录我的网站?
- node.js - 如何为机器人输入角色以在多个服务器中访问它的命令?
- laravel - 我怎样才能使多边形的内部可点击?
- c++ - 难以创建 Spdlog 异步文件记录器
- ms-access - 如果选中 Microsoft Outlook 16.0 对象库引用,则功能区回调函数不起作用
- python - 编写python类以计算两个数字的总和时出错
- java - “无法解析导入 com.cinterion.io”错误
- r - 如何将一个向量拆分为 n 个向量并将它们打印在 R 中的一个表中?