如果WooCommerce Cart商品延期交货,请勿使用优惠券

时间:2017-08-11 18:48:54

标签: php wordpress woocommerce cart coupon

到目前为止,这就是我所拥有的:

add_filter('woocommerce_coupon_is_valid','coupon_always_valid',99,2);
function coupon_always_valid($valid, $coupon){
    global $woocommerce;
    $valid = true;
    foreach ( $woocommerce->cart->get_cart() as $cart_item_key => $values ) {
       // if($values['data']->backorders_allowed()){ //check if backorders are allowed on this product
            // get the stock quantity - returns the available amount number
            $stock_info = $values['data']->get_stock_quantity();

            if($stock_info < 1){
                $vaild = false;

                break;
            }
        }
    // give error message...

    return $valid ; 
}

我不明白为什么这个选项没有内置到woocommerce中。我们想要清除库存中的库存,但也要对我们的产品进行延期交货,但我们不希望给任何延期交货商打折。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

$vaild = false;的代码中存在拼写错误(错误的变量名称应 $valid )和exta } 因为您评论了if语句,导致错误

下面,我已将您的代码升级为更实际的版本(将<{1}}和global $woocommerce替换为 $woocommerce->cart ):

WC()->cart

代码放在活动子主题(或主题)的function.php文件中,或者放在任何插件文件中。

现在此代码可以正常运行