猿问

Woo购物车未正确显示小数点的定价

我有一些产品需要将定价显示到小数点后8位,例如,每单位价格为0.00000214。


我尝试添加一个过滤器,但它只是显示值0.00000000


这是我所拥有的:


function filter_woocommerce_cart_item_price( $price, $cart_item, $cart_item_key ) 

    $formattedNum = number_format((float) $price, 8); 

    return $formattedNum;

}; 


add_filter( 'woocommerce_cart_item_price', 'filter_woocommerce_cart_item_price', 10, 3 ); 

谢谢


暮色呼如
浏览 69回答 1
1回答

米琪卡哇伊

问题是$price返回已格式化的值。我需要得到原价。这是工作解决方案:add_filter( 'woocommerce_cart_item_price', 'change_cart_item_price', 10, 3 );function change_cart_item_price( $price, $cart_item, $cart_item_key ){    if ( WC()->cart->display_prices_including_tax() )    {        $product_price = wc_get_price_including_tax( $cart_item['data'] );    } else    {        $product_price = wc_get_price_excluding_tax( $cart_item['data'] );    }    $price =  number_format($product_price,8);    return floatval($price);}
随时随地看视频慕课网APP
我要回答