نمایش کلمه رایگان به جای ۰ تومان در ووکامرس
در نسخههای قدیمیتر WooCommerce، قیمت 0 تومان به صورت «رایگان» نمایش داده میشد و محصولات با قیمتهای خالی قابل انتشار یا خرید نبودند. اگر شما هم با ما همنظر هستید که همچنان نمایش رایگان به جای 0 تومان بهتر است، در ادامه همراه ما باشید.
برای استفاده از قابلیت رایگان کردن یک محصول در ووکامرس کافیست در محصولات> ویرایش محصول را کلیک کرده و قیمت را روی صفر تنظیم کنید. در این شرایط محصول با قیمت 0 تومان نمایش داده میشود. برای درج عبارت رایگان به جای 0 تومان در محصولات ووکامرس، کافیست تکه کد زیر را در فایل Function قالب اضافه کنید.
/* WooCommerce: Free Products */
add_filter('woocommerce_get_price_html', 'novinadmin_price_zero', 100, 2);
function novinadmin_price_zero( $price, $product ){
if ('0' === $product->get_price() ) {
$price = '';
}
return $price;}
نکته: بهجای عبارت “رایگان” هر عبارت دیگری مثل تماس بگیرید را میتوانید درج کنید.
کدهای بسیار زیادی در سایتهای دیگر وجود دارد که به درستی کار نمیکند ولی این کد کاملا تست شده و نتیجه دلخواه را ارائه داده است. در نظر داشته باشید که کدهای php ارائه شده ارتباطی با قالب سایت شما ندارند و مستقیماً بر روی افزونه ووکامرس تأثیرگذار هستند.
برخی از طراحان وب، کدهای php اختصاصی خود را در فایل فانکشن قرار داده یا طراحی ظاهر صفحات به نحوی است که کدهای فوق تأثیری بر مقادیر نخواهند داشت؛ بنابراین درصورتیکه با درج صحیح کدها در فایل Function تغییری مشاهده نشد، بهتر است با طراح قالب خود در ارتباط باشید یا تکه کد زیر را نیز امتحان کنید.
add_filter(
'woocommerce_get_price_html'
,
'bbloomer_price_free_zero'
, 9999, 2 );
function
bbloomer_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( __(
'Free'
,
'woocommerce'
),
$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
), __(
'Free'
,
'woocommerce'
) );
$price
.=
$product
->get_price_suffix();
}
else
{
$price
= __(
'Free'
,
'woocommerce'
);
}
}
}
elseif
( 0 ==
$product
->get_price() ) {
$price
=
'<span class="woocommerce-Price-amount amount">'
. __(
'رایگان'
,
'woocommerce'
) .
'</span>'
;
}
return
$price
;
}
نکته: در صورتیکه فایل functions.php کد شده بود، با طراح قالب در ارتباط باشید تا فایل جایگزین فانکشن را به شما معرفی کند.
کلمه رایگان همیشه برای کاربران جذاب بوده است؛ بنابراین شما میتوانید نسخه تستی محصول را به صورت رایگان در اختیار کاربران قرار دهید تا اعتماد آنها را جلب کرده و تعداد بیشتری را به مشتری تبدیل کنید.
تکه کدهای بالا برای نمایش کلمه رایگان به جای قیمت ۰ تومان را شما هم تست کنید و نتیجه را به ما نتیجه را اطلاع دهید.
سلام و وقت بخیر
ممنون از مطلب خوبتون
آیا راه حل یا تکه کدی برای محصولات متغیر وجود داره ؟ یعنی وقتی متغیرها انتخاب شد - به جای نوشتن این ترکیب موجود نیست یا این محصول موجود نیست متن موردنظر مارو بیاد نمایش بده - از قالب وودمارت راستچین استفاده میکنم