1 回答

TA貢獻1827條經驗 獲得超8個贊
以下方法可以解決這個問題,在 WooCommerce 檔案上添加一個自定義“添加到購物車”按鈕,該按鈕在將產品添加到購物車后重定向到結賬:
add_action( 'woocommerce_after_shop_loop_item', 'buy_checkout_on_archive', 20 );
function buy_checkout_on_archive(){
global $product;
if ( $product->is_type('simple') ){
$product_id = $product->get_id();
$button_url = '?addtocart='.$product_id;
$button_class = 'button loop-checkout-btn';
$button_text = __('Buy & Checkout', 'woocommerce');
echo '<a href="'.$button_url.'" class="'.$button_class.'">'.$button_text.'</a>';
}
}
add_action( 'template_redirect', 'addtocart_on_archives_redirect_checkout' );
function addtocart_on_archives_redirect_checkout(){
if( isset( $_GET['addtocart'] ) && $_GET['addtocart'] > 0 ) {
WC()->cart->add_to_cart( intval($_GET['addtocart']) );
// Checkout redirection
wp_safe_redirect( wc_get_checkout_url() );
exit;
}
}
代碼位于活動子主題(或活動主題)的functions.php 文件中。經過測試并有效。
- 1 回答
- 0 關注
- 110 瀏覽
添加回答
舉報