Redirect to Checkout on Add to Cart WooCommerce

1. WooCommerce Settings to allow for Redirect to Checkout on Add to Cart
Go to WooCommerce > Settings > Products > Display and disable both options: “Redirect to the cart page after successful addition” & “Enable AJAX add to cart buttons on archives”

2. PHP Snippet: Redirect to Checkout on Add to Cart – WooCommerce

function ca_redirect_checkout_add_cart( $url ) {
    $url = get_permalink( get_option( 'woocommerce_checkout_page_id' ) ); 
    return $url;
}
 
add_filter( 'woocommerce_add_to_cart_redirect', 'ca_redirect_checkout_add_cart' );

How to Get Various WooCommerce Page URLs
Shop URL
Get the WooCommerce Shop URL (this is the root category page) with the following:

$shop_page_url = get_permalink( woocommerce_get_page_id( 'shop' ) );

My Account URL
You can get the WooCommerce My Account URL by using the woocommerce_myaccount_page_id option:

$myaccount_page_id = get_option( 'woocommerce_myaccount_page_id' );
if ( $myaccount_page_id ) {
  $myaccount_page_url = get_permalink( $myaccount_page_id );
}

Cart URL
The WooCommerce Cart URL can be retrieved with a call to the cart object’s get_cart_url() method:

global $woocommerce;
$cart_url = $woocommerce->cart->get_cart_url();

Checkout URL
Similar to getting the cart URL, the WooCommerce Checkout URL can be retrieved with a call to the cart object’s get_checkout_url() method:

global $woocommerce;
$checkout_url = $woocommerce->cart->get_checkout_url();

Payment Page URL
This is the payment page URL used to collect payment information after the checkout page by redirect/hosted payment gateways. The path typically looks like /checkout/pay/. Get this URL with the following:

$payment_page = get_permalink( woocommerce_get_page_id( 'pay' ) );

// make ssl if needed
if ( get_option( 'woocommerce_force_ssl_checkout' ) == 'yes' ) $payment_page = str_replace( 'http:', 'https:', $payment_page );

Logout URL
This example will generate a WordPress logout URL that brings the user back to the Account area of the site:

$myaccount_page_id = get_option( 'woocommerce_myaccount_page_id' );

if ( $myaccount_page_id ) {

  $logout_url = wp_logout_url( get_permalink( $myaccount_page_id ) );

  if ( get_option( 'woocommerce_force_ssl_checkout' ) == 'yes' )
    $logout_url = str_replace( 'http:', 'https:', $logout_url );
}