首页 > 解决方案 > 是否有挂钩或插件可以从 woocommerce 优惠券中排除某些产品标签?

问题描述

我需要从 woocommerce 优惠券中排除产品标签。

我曾尝试在 Google 上搜索适用的插件,但结果为空。

理想情况下,解决方案将是一个插件,可以将自定义字段添加到优惠券帖子类型。但是,我将通过钩子/过滤器进行硬编码。

标签: phpwordpresswoocommercecoupon

解决方案


您可以使用一个过滤器来完成此woocommerce_coupon_is_valid_for_product

它接受 4 个参数,有效、产品、优惠券和价值。它是从第 3 版左右的第 860 行的class-wc-coupon.php调用的。它应该返回一个布尔值(true/false)。

请注意,以下代码不完整且未经测试,仅用于示例目的。

add_filter('woocommerce_coupon_is_valid_for_product', 'exclude_product_from_coupon_by_tag', 12, 4);
function exclude_product_from_coupon_by_tag($valid, $product, $coupon, $values ){
    
    //Check if product has tag/s
    $valid = has_term('INSERT_TERM_HERE', 'product_tag', $product);

    return $valid;
}

希望有帮助!


推荐阅读