我使用的是WooCommerce插件,我希望产品价格在后台显示时与我输入的价格完全一样。例如,如果我设置了500的价格,我希望它在前端显示为500,没有任何尾随零或小数位。同样,如果我输入了456.4的价格,我希望它在产品页面上显示为456.4,另外,如果我输入一个价格,比如34.968,我希望它在前端显示为34.968,保留精确的十进制值,而不进行任何自动格式化。
sqougxex1#
add_filter( 'woocommerce_get_price_html', 'custom_price_html', 10, 2 ); function custom_price_html( $price_html, $product ) { $price = (float) get_post_meta( $product->get_id(), '_regular_price', true ); $formatted_price = number_format( $price, 0, '', '' ); // Check if decimals exist if ( strpos( $price, '.' ) !== false ) { // Preserves exact decimal places $formatted_price = number_format( $price, strlen( explode( '.', $price )[1] ), '.', '' ); } return '<span class="price">' . $formatted_price . '</span>'; // Wrap the price in a span for styling if needed }
字符串我找到了一个解决方案,但它安全吗?
1条答案
按热度按时间sqougxex1#
字符串
我找到了一个解决方案,但它安全吗?