如何仅跳过某些产品的 woocomerce 购物车页面?

Mar*_*cio 5 php wordpress cart e-commerce woocommerce

我将此添加到我的functions.php文件中:

add_filter ('woocommerce_add_to_cart_redirect', 'woo_redirect_to_checkout');
function woo_redirect_to_checkout() {
$checkout_url = WC()->cart->get_checkout_url();
return $checkout_url;
}
Run Code Online (Sandbox Code Playgroud)

但现在,所有的产品都在重新引导海峡结账。我只想在一种产品中使用此选项。这是我可以向同一个文件管理器添加产品 ID 的方法吗?

谢谢!

Pra*_*ahu 3

您需要在产品刚刚添加到购物车时获取该产品,然后检查是否要将该产品的购物车页面重定向到结帐页面。您需要更改$desire_product = 'certain_product';下面的代码行,它肯定会起作用。

add_filter( 'woocommerce_add_to_cart_redirect', 'woo_redirect_checkout' );

function woo_redirect_checkout() {
    global $woocommerce;
    $desire_product = 'certain_product';
    //Get product ID
    $product_id = (int) apply_filters( 'woocommerce_add_to_cart_product_id', $_POST['add-to-cart'] );

    //Check if current product is subscription
    if ( $product_id == $desire_product ){
        $checkout_url = $woocommerce->cart->get_checkout_url();
        return $checkout_url;
        exit;
    } else {
        $cart_url = $woocommerce->cart->get_cart_url();
        return $cart_url;
        exit;
    }
}
Run Code Online (Sandbox Code Playgroud)