如何重定向到 WooCommerce 中自定义添加到购物车按钮的结帐

How to make a redirection to checkout on a custom add to cart button in WooCommerce

我正在使用 WooCommerce 并将以下代码添加到 functions.php:

add_filter( 'woocommerce_product_add_to_cart_url', 'custom_fix_for_individual_products', 10, 2 );

function custom_fix_for_individual_products( $add_to_cart_url, $product ){
    $add_to_cart_url = wc_get_checkout_url();
    return $add_to_cart_url;
}

我期望的是,当用户将产品添加到他们的购物车时:此代码会将用户重定向到结帐页面,而不会实际将产品添加到购物车。但是,它仍将产品添加到购物篮中。这段代码有什么问题?

背景: 我正在使用 答案代码,但上面的行不能正常工作,这就是为什么我现在只使用那条线。服务器日志中没有错误。

根据您的评论,要重定向到自定义添加到购物车按钮的结帐页面,您可以将 link 更改为类似 https://example.com/checkout/?add-to-cart=99 的内容,其中 99 是您要添加到购物车的产品编号。

因此您的自定义添加到购物车按钮 link 的代码将类似于 (其中 99 是产品 ID) :

$product_id = 99;
$url        = wc_get_checkout_url() . '?add-to-cart=' . $product_id;