wordpress 自定义WooCommerce价格显示:前端的确切后端值

0pizxfdo  于 11个月前  发布在  WordPress
关注(0)|答案(1)|浏览(155)

我使用的是WooCommerce插件,我希望产品价格在后台显示时与我输入的价格完全一样。例如,如果我设置了500的价格,我希望它在前端显示为500,没有任何尾随零或小数位。同样,如果我输入了456.4的价格,我希望它在产品页面上显示为456.4,另外,如果我输入一个价格,比如34.968,我希望它在前端显示为34.968,保留精确的十进制值,而不进行任何自动格式化。

sqougxex

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
}

字符串
我找到了一个解决方案,但它安全吗?

相关问题