نمایش رایگان به جای 0 در ووکامرس
نمایش رایگان به جای 0 در ووکامرس
در نسخههای قدیمیتر WooCommerce، قیمتهای 0 تومان به عنوان «رایگان» نمایش داده میشد. و محصولات با قیمت های خالی قابل انتشار/خرید نبودند. اکنون آنها این را تغییر داده اند، اما من همچنان معتقدم که “رایگان” بسیار بهتر از “0” به نظر می رسد.
آیا میخواهید قیمت «رایگان» را به جای 0 دلار با تومان در ووکامرس نشان دهید، وقتی محصول واقعاً رایگان است؟
نمایش کلمه رایگان به جای 0 نومان (یا هر ارزی که با آن معامله می کنید) برای کاربران بیشتر قابل توجه است و کمتر گیج کننده است، به خصوص زمانی که قثد دارید محصولات یا هدایایی را به صورت رایگان برای مشتریان خود اضافه کنید.
برای اینکه این موضوع انجام پذیرد و به جای صفر از کلمه رایگان استفاده شود فقط کافی است کد زیر را کپی کرده و در فایل functions.php قالب خود قرار داده و ذخیره کنید.
add_filter( 'woocommerce_get_price_html', 'pangash_price_free_zero', 9999, 2 );
function pangash_price_free_zero( $price, $product ) {
if ( $product->is_type( 'variable' ) ) {
$prices = $product->get_variation_prices( true );
$min_price = current( $prices['price'] );
if ( 0 == $min_price ) {
$max_price = end( $prices['price'] );
$min_reg_price = current( $prices['regular_price'] );
$max_reg_price = end( $prices['regular_price'] );
if ( $min_price !== $max_price ) {
$price = wc_format_price_range( 'رایگان', $max_price );
$price .= $product->get_price_suffix();
} elseif ( $product->is_on_sale() && $min_reg_price === $max_reg_price ) {
$price = wc_format_sale_price( wc_price( $max_reg_price ), 'رایگان' );
$price .= $product->get_price_suffix();
} else {
$price = 'رایگان';
}
}
} elseif ( 0 == $product->get_price() ) {
$price = '<span class="woocommerce-Price-amount amount">رایگان</span>';
}
return $price;
نمایش رایگان به جای 0 در ووکامرس
In older versions of WooCommerce free prices used to display as “FREE!” and products with empty prices were not publishable/purchasable. Now they’ve changed this around, but I still believe “FREE” looks much better than “$0.00”. It’s much more enticing, isn’t it?
Well, here’s how you restore the old WooCommerce functionality – as usual it’s as simple as using a PHP filter provided by WooCommerce and overriding the default behavior