在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. "submit" name="add-to-cart" value="get_id() ); ?>" class="single_add_to_cart_button button alt">echo esc_html( $product->single_add_to_cart_text() ); ?>

在其下添加以下代码:

  1. "submit" name="add-to-cart" value="get_id()); ?>" class="single_add_to_cart_button button alt" id="buy_now_button">
  2. "hidden" name="is_buy_now" id="is_buy_now" value="0" />

此代码将会在『加入购物车』按钮后添加一个新的『立即购买』按钮。

二、添加 JS 代码函数到 functions.php 中

  1. function buy_now_submit_form() {
  2.  ?>
  3.   
  4.  
  5. }
  6. 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

转载于:https://www.cnblogs.com/zccwsm/p/9468568.html

你可能感兴趣的:(在WooCommerce中添加“立即购买”按钮直接跳转到结算页面)