WordPress教程

WooCommerce如何为订单添加附加费用

阿里云

我们在使用 WooCommerce 建站的时候有些特殊情况下,网店需向顾客收取一部分额外的费用以摊薄成本。比较典型的应用场景就是开发票费用、出关的关税等等。而 WooCommerce 默认无法在订单中添加这类额外费用,只能添加税费等附加费用。但是,如果把这部分额外费用直接加到商品价格上就不妥了,会造成商品价格更高、无竞争力。因此,我们有必要为 WooCommerce 订单添加一项或多项附加费用来实现此功能。以下代码以收取每单商品价格加运费总和的 5%作为附加费用为例来说明如何添加附加费用功能:
一、为所有交易添加基于百分比的附加费

  1.     /**
  2.      * 添加1%的附加费到你的购物车和结算页面
  3.      * 更改百分比以将附加费设置为适合的值
  4.      */
  5.     add_action( 'woocommerce_cart_calculate_fees','woocommerce_custom_surcharge' );
  6.     function woocommerce_custom_surcharge() {
  7.       global $woocommerce;
  8.     	if ( is_admin() && ! defined( 'DOING_AJAX' ) )
  9.     		return;
  10.     	$percentage = 0.01;
  11.     	$surcharge = ( $woocommerce->cart->cart_contents_total + $woocommerce->cart->shipping_total ) * $percentage;	
  12.     	$woocommerce->cart->add_fee( 'Surcharge', $surcharge, true, '' );
  13.     }
也想出现在这里?联系我们
创客主机

二、为所有交易添加固定的附加费

  1.     /**
  2.      * 为购物车/结帐中的所有交易添加固定的附加费
  3.      */
  4.     add_action( 'woocommerce_cart_calculate_fees','wc_add_surcharge' ); 
  5.     function wc_add_surcharge() { 
  6.     global $woocommerce; 
  7.     if ( is_admin() && ! defined( 'DOING_AJAX' ) ) 
  8.     return;
  9.     $county = array('US');
  10.     // change the $fee to set the surcharge to a value to suit
  11.     $fee = 1.00;
  12.     if ( in_array( WC()->customer->get_shipping_country(), $county ) ) : 
  13.         $woocommerce->cart->add_fee( 'Surcharge', $fee, true, 'standard' );  
  14.     endif;
  15.     }

三、根据交货国家/地区添加附加费

  1.     /**
  2.      * 根据送货国向您的购物车/结算添加1%的附加费
  3.      * 税金、运费及订单小计均包含在附加费内
  4.      */
  5.     add_action( 'woocommerce_cart_calculate_fees','woocommerce_custom_surcharge' );
  6.     function woocommerce_custom_surcharge() {
  7.       global $woocommerce;
  8.  
  9.     	if ( is_admin() && ! defined( 'DOING_AJAX' ) )
  10.     		return;
  11.      	$county 	= array('US');
  12.     	$percentage 	= 0.01;
  13.     	if ( in_array( $woocommerce->customer->get_shipping_country(), $county ) ) :
  14.     		$surcharge = ( $woocommerce->cart->cart_contents_total + $woocommerce->cart->shipping_total ) * $percentage;
  15.     		$woocommerce->cart->add_fee( 'Surcharge', $surcharge, true, '' );
  16.     	endif;
  17.  
  18.     }

WooCommerce 如何为订单添加附加费用

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

收藏
(0)

发表回复

热销模板

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

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