检查优惠券是否应用于 WooCommerce 中的购物车

2024-03-08

我需要找到一种方法来检查优惠券是否适用于 WooCommerce 结帐,如果是这样,我想做点什么。我尝试四处寻找这个问题,但找不到解决方案。

这是我正在尝试的精简版本:

add_action('woocommerce_before_cart_table', 'apply_product_on_coupon');
function apply_product_on_coupon( ) {
    global $woocommerce;
    $coupon_id = '12345';
        
        if( $woocommerce->cart->applied_coupons === $coupon_id ) {
        echo 'YAY it works';
    }
}

那么这不是检查购物车中是否存在优惠券的正确方法吗?if( $woocommerce->cart->applied_coupons === $coupon_id )


从你的例子来看,这样的事情可能会起作用。这是未经测试的,但应该可以让您朝着正确的方向迈出一步:

add_action('woocommerce_applied_coupon', 'apply_product_on_coupon');
function apply_product_on_coupon( ) {
    global $woocommerce;
    $coupon_id = '12345';
    $free_product_id = 54321;

    if(in_array($coupon_id, $woocommerce->cart->get_applied_coupons())){
        $woocommerce->cart->add_to_cart($free_product_id, 1);
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

检查优惠券是否应用于 WooCommerce 中的购物车 的相关文章

随机推荐

  • 将类组织到 App_Code 文件夹中的命名空间中无法按预期工作

    我为我的 Web 项目创建了几个类 并将它们存储在 App Code 文件夹中 我不想将所有类存储在顶层 无命名空间 但想将它们组织到命名空间中 到目前为止 这似乎不可能 因为当我使用 using XXXX 时命名空间声明它仍然无法在我的代
  • 将 UTC 日期转换为日期时间字符串 Javascript

    我有一个 UTC 日期字符串 2011 10 30T18 30 00Z 我想将其转换为 2011 10 30 18 30 谁能给我一些建议如何做到这一点 我将感谢您的时间和考虑 Thanks 最简单的解决方案是尝试以下方法 var date
  • 如何将接口作为参数传递给方法?

    我是 C 的新手 您能告诉我如何将接口作为参数传递给方法吗 即我想访问接口成员 属性 并向其分配值并将该接口作为参数发送给另一个方法 举例来说 如果我有一个界面IApple其成员作为财产int i and int j我想将值分配给i and
  • JQuery:复选框如何在选择另一个复选框时选中或取消选中所有复选框[重复]

    这个问题在这里已经有答案了 当我选择 取消选择 全选 复选框时 我希望选中或取消选中所有其他复选框 没有子元素或父元素 网页代码 div li class input li div
  • 地图 v2 标记动画 - 淡入和淡出

    如何淡入淡出谷歌地图 http developer android com reference com google android gms maps GoogleMap html marker http developer android
  • 如何在R中按分组列求和?

    这是我的输入 一个包含 n 列的数据框 以及一个将每个 id 分配给一个组的辅助数据框 df lt data frame a1 c 1 2 3 a2 c 2 3 4 b1 c 4 5 6 b2 c 5 6 7 aux lt data fra
  • iOS 4:FigCreateCGImageFromJPEG 返回 -1

    我试图在我的应用程序中运行基本的图像选择器 照片拍摄器 但遇到了以下错误 ERROR FigCreateCGImageFromJPEG returned 1 Input null was 551120 bytes 我显示了图像选择器 相机视
  • 我们如何在 CQ5 中定义全局属性

    我的要求是拥有一个具有可创作属性的全局页眉和页脚 因此 如果我们更新一页上的属性 它应该会反映在所有页面上 在 CQ5 中实现这一目标的最佳方法是什么 ACS AEM Commons 现在支持此功能 无需使用 iparsys 共享组件属性
  • 在没有可用干净版本的情况下清理被黑网站的最佳方法?

    我被要求fix在生产服务器上使用 osCommerce 构建的被黑网站 该站点始终存在于远程主机上 没有离线的clean版本 让我们暂时忘记这有多么愚蠢 并处理它的本质 它已被黑客攻击多次 并且另一个人fixed通过删除 Web shell
  • 无法使用 localhost 连接手机上运行的 Android 应用程序

    我正在使用 GCM 制作 Android 应用程序 我正在尝试通过在手机上运行的应用程序进行注册 输入无法使用 php 存储在本地主机 XAMPP 上 我的手机和笔记本电脑在同一网络上运行 localhost 的 IP 地址有问题 我使用这
  • 当返回类型为标记接口时使用 Jackson 进行多态序列化

    我有一个返回标记接口的休息服务 并且该接口有多个实现 并且在实现中没有任何公共属性 RequestMapping value users userName method RequestMethod GET public User getUs
  • 为什么初始化器列表中的自初始化引用不是错误?

    我遇到了一个奇怪的问题 如果我尝试编译自赋值对象引用 我的编译器 针对 ESP32 不会显示任何错误或警告 我调查了这个问题 发现某些编译器不会显示此代码的任何错误或警告 include
  • 有没有办法反序列化 Elasticsearch Nest 搜索查询?

    使用 Nest 构建 Elasticsearch 查询后 我希望能够查看发送到 Elasticsearch 的 JSON 版本 这可能吗 我想是某种解串器 这是我的后续问题的信息 infer defaultIndex myindex ack
  • 为什么 Android 对 ConstraintLayout 使用单独的 xmlns

    我对 Android 中的 ConstraintLayout 有点困惑 我正在学习它 首先我感到困惑的是为什么 android 使用单独的 xml 命名空间呢 xmlns app http schemas android com apk r
  • 使用 IIS 和 ACL 的 WCF 授权

    我正在尝试保护一些 WCF 服务 如果可能的话 我想使用 IIS 或 Web config 来完成所有繁重的工作 配置 我不想在我的代码中嵌入任何东西 我想我知道这可能不可行 如果可能的话 我想实现这一点而不必求助于 AspCompatib
  • 不透明度低于 childs 的容器

    我想制作我的网页background color with opacity 0 5但网页内的内容会有一个opacity 1 作为默认值 问题是如果我设置opacity 0 5对于容器 该容器内的所有子级都相同opacity value 我搜
  • 关于如何使用R和ggplot2绘制背对背图的问题

    我的目标是绘制一个金字塔图 如所附的那样 我找到了几个使用 ggplot 的示例 但我仍然在努力将我的示例应用于我的数据 或我想要绘制的数据 structure list serial c 40051004 16160610 1609031
  • Centos 无法安装 mysqli

    我无法安装Mysqli 我正在使用 Centos 6 apache 2 2 x 和 php 5 4 MySql 5 5 37 cll I tried yum install php pdo php mysqli 我看到 Loaded plu
  • 使用批处理文件发送电子邮件

    我的 Outlook 配置了我的办公室 ID 并且对批处理脚本非常陌生 通过批处理文件向我的同事发送电子邮件的最简单的方法 最简单的代码 是什么 thanks 我可以为你看到 3 个选项 最重要的是 批处理没有内置方法 但有可以从批处理文件
  • 检查优惠券是否应用于 WooCommerce 中的购物车

    我需要找到一种方法来检查优惠券是否适用于 WooCommerce 结帐 如果是这样 我想做点什么 我尝试四处寻找这个问题 但找不到解决方案 这是我正在尝试的精简版本 add action woocommerce before cart ta