WordPress教程

WooCommerce 购物车金额为 0 时,免支付直接下单

阿里云

在 WooCommerce 搭建的某些系统中,订单的金额有时候会为 0,比如免费赠送的商品、免费领取小样、使用优惠券后购物车总金额为 0 等等情况。WooCommerce 默认还是需要支付一下,生成订单,以便后续处理。

当购物车金额为 0 时,如果默认选择了线上支付网关,这些支付网关一般都会因为支付金额为 0 而报错,导致支付失败。其实金额为 0 时,WooCommerce 是可以免支付直接下单的。

也想出现在这里?联系我们
创客主机

WooCommerce 免支付直接下单的代码

在下面的代码中,我们用 woocommerce_cart_needs_payment 这个 Filter,过滤 $need_payment 参数,当订单金额为 0 时,设置该参数为 0, 这样购物车中的支付按钮就会变成下单按钮,点击这个下单按钮,就可以免支付直接下单了。

  1. add_filter( 'woocommerce_cart_needs_payment', function($need_payment, $cart){
  2.     if($cart->get_total('edit') == 0){
  3.         $need_payment = false;
  4.     }
  5.  
  6.     return $need_payment;
  7. }, 10,2);

除了购物车为 0 时,免支付下单,在一些预定系统,询价系统中,也是需要免支付直接下单的,我们参考上面的代码,修改 $need_payment 参数为 false 即可,具体实现代码跟据实际情况调整即可。

WooCommerce 购物车金额为 0 时,免支付直接下单

已有 16 人购买
查看演示升级 VIP立刻购买

收藏
(0)

发表回复

热销模板

Ashade - 作品展示摄影相册WordPress汉化主题
LensNews

本站承接 WordPress / PbootCMS / DedeCMS 等
系统建站、仿站、开发、定制等业务!