在WooCommerce中添加“立即購買”按鈕直接跳轉到結算頁面


 

MNews 主題集成了 WooCommerce 商城插件,有些用戶要求增加一個『立即購買』按鈕,這篇文章介紹下如何在WooCommerce中添加“立即購買”按鈕並直接跳轉到結算頁面。

注:當前功能只對『單個產品』有效。

一、添加『立即購買』按鈕 HTML 代碼

找到插件目錄 /wp-content/plugins/woocommerce/templates/single-product/add-to-cart 下的 simple.php 文件,復制到主題 /wp-content/themes/mnews/woocommerce/single-product/add-to-cart目錄下,找到如何代碼:

  1. <button type="submit" name="add-to-cart" value="<?php echo esc_attr( $product->get_id() ); ?>" class="single_add_to_cart_button button alt"><?php echo esc_html( $product->single_add_to_cart_text() ); ?></button>

在其下添加以下代碼:

  1. <button type="submit" name="add-to-cart" value="<?php echo esc_attr($product->get_id()); ?>" class="single_add_to_cart_button button alt" id="buy_now_button">
  2. <?php _e('立即購買','salong'); ?>
  3. </button>
  4. <input type="hidden" name="is_buy_now" id="is_buy_now" value="0" />

此代碼將會在『加入購物車』按鈕后添加一個新的『立即購買』按鈕。

二、添加 JS 代碼函數到 functions.php 中

  1. function buy_now_submit_form() {
  2.  ?>
  3.   <script>
  4.       jQuery(document).ready(function(){
  5.           // listen if someone clicks 'Buy Now' button
  6.           jQuery('#buy_now_button').click(function(){
  7.               // set value to 1
  8.               jQuery('#is_buy_now').val('1');
  9.               //submit the form
  10.               jQuery('form.cart').submit();
  11.           });
  12.       });
  13.   </script>
  14.  <?php
  15. }
  16. add_action('woocommerce_after_add_to_cart_form', 'buy_now_submit_form');

此段代碼是用來監聽按鈕點擊事件,也可以單獨把 js 代碼直接放在 js 文件中,不過這樣方便一些。

三、重定向到結算頁面

  1. add_filter('woocommerce_add_to_cart_redirect', 'redirect_to_checkout');
  2. function redirect_to_checkout($redirect_url) {
  3.   if (isset($_REQUEST['is_buy_now']) && $_REQUEST['is_buy_now']) {
  4.      global $woocommerce;
  5.      $redirect_url = wc_get_checkout_url();
  6.   }
  7.   return $redirect_url;
  8. }

這是幫助我們將用戶重定向到結帳頁面的代碼。默認情況下,是重定向到購物車頁面。

到此,如果點擊『立即購買』按鈕,將重定向到結帳頁面。

英文原文地址:https://medium.com/@dwebsoftguy/add-buy-now-button-in-woocommerce-804528d41ecf


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM