php – woocommerce在结帐和购物车页面更改价格

通过woocommerce,在我的网站中,我想在购物车页面添加一个选择输入,用户可以在两个选项之间选择一个值,并根据此值我将更改价格.

到目前为止,我可以获得总数并使用此更改它:

function action_woocommerce_before_cart_totals(  ) { 
 global $woocommerce;

 $woocommerce->cart->total  = $woocommerce->cart->total*0.25;
   var_dump( $woocommerce->cart->total);}; 

问题是,当我去结账页面时,它不会计算在functions.PHP中计算的总数

谢谢你的帮助.

解决方法:

您也可以同时使用woocommerce_review_order_before_order_total钩子,以结帐方式显示您的自定义价格:

add_action( 'woocommerce_review_order_before_order_total', 'custom_cart_total' );
add_action( 'woocommerce_before_cart_totals', 'custom_cart_total' );
function custom_cart_total() {

    if ( is_admin() && ! defined( 'DOING_AJAX' ) )
            return;

    WC()->cart->total *= 0.25;
    //var_dump( WC()->cart->total);
}

代码放在活动子主题(或主题)的function.PHP文件中,或者放在任何插件文件中.

代码经过测试和运行.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...