1.添加 “立即購買” 按鈕
添加立即購買按鈕有很多種方式,
直接修改woocommerce模板文件,但是這種方受版本更新影響
在當前使用的主題里面修改,不受版本更新影響,但是主題很多,得把每一個主題模板文件修改
以插件的方式添加購買按鈕
我這里使用的是第三種
add_action( 'woocommerce_after_add_to_cart_button', 'add_content_after_addtocart' );
add_action('woocommerce_after_add_to_cart_form', 'buy_now_submit_form');
add_filter('woocommerce_add_to_cart_redirect', 'redirect_to_checkout');
/** * 添加立即購買按鈕 */ function add_content_after_addtocart() { // get the current post/product ID $current_product_id = get_the_ID(); // get the product based on the ID $product = wc_get_product( $current_product_id ); // get the "Checkout Page" URL //$checkout_url = wc_get_checkout_url(); if (in_array($product->get_type(), ['simple', 'variable'])) { $buy_now_button = '<button type="submit" style="background-color:green" name="add-to-cart" class="single_add_to_cart_button button alt" value="' . $current_product_id .'" id="buy_now_button">Buy now </button> <input type="hidden" name="is_buy_now" id="is_buy_now" value="0" /> '; echo $buy_now_button; } } /** * 控制跳轉 */ function buy_now_submit_form() { ?> <script> jQuery(document).ready(function(){ // listen if someone clicks 'Buy Now' button jQuery('#buy_now_button').click(function(){ // set value to 1 jQuery('#is_buy_now').val('1'); //submit the form jQuery('form.cart').submit(); }); }); </script> <?php } /** * 商品加入購物車后,返回要跳轉的地址 * @param $redirect_url * @return string */ function redirect_to_checkout($redirect_url) { if (isset($_REQUEST['is_buy_now']) && $_REQUEST['is_buy_now']) { $redirect_url = wc_get_checkout_url(); } return $redirect_url; }