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文件中,或者放在任何插件文件中.

此代码经过测试和运行.

上一篇:git初次使用


下一篇:php – Woocommerce中的欧洲GDPR额外结帐验证复选框