我仅在 WooCommerce 前端中使用小数点的样式化为大写我上一个问题的答案代码。
现在我有一个特殊的问题:我注意到我的代码违反了默认的 WooCommerce 小数计算规则,您在我的代码中是否可以看到任何会破坏它的内容?
例如,使用此代码,在后端输入的税前价格为 7,39669 欧元(8.95 欧元/1.21 的结果)错误地显示为 8.94 欧元,而不是 8.95 欧元。当我禁用此自定义代码时,WooCommerce 规则再次正常工作。
我想 确保代码“调用”默认的 WooCommerce 计算,以便代码仅更改小数的显示,仅此而已。
为了避免这个问题,这里我使用不同的方式将小数与价格分开:
add_filter( 'formatted_woocommerce_price', 'ts_woo_decimal_price', 10, 5 );
function ts_woo_decimal_price( $formatted_price, $price, $decimal_places, $decimal_separator, $thousand_separator ) {
// Not on backend
if ( ! is_admin() ) {
$price_data = explode($decimal_separator, $formatted_price);
return $price_data[0] . '<sup>' . $price_data[1] . '</sup>';
}
return $formatted_price;
}
代码位于活动子主题(或活动主题)的functions.php 文件中。已测试并有效。