حذف رنج قیمت محصول در ووکامرس – یکی از مشکلات همده ای که وبمستران با آن دست و پنجه نرم میکنند.
اگر محصول متغیر شما دارای محدوه قیمت باشد، در ووکامرس این محدوه به صورت زیر نمایش داده می شود:
350000 – 420000 هزار تومان
گاهی اوقات این نوع نمایش برای کاربران ایده آل نبوده و ترجیح می دهند تنها یک قیمت واحد نمایش داده شود :
350000 هزار تومان
حذف رنج قیمت محصول در ووکامرس
شما به راحتی میتوانید با اضافه کردن کد زیر به فایل functions.php پوسته خود می توانید این رنج قیمت را حذف کنید.
کاربرانی که از محصولات ماهدیس وب (دیجی لند) استفاده می کنند، باید این کد را به انتهای فایل myfunctions اضافه کنند.
function mweb_variable_price_format( $price, $product ) { $min_price_regular = $product->get_variation_regular_price( 'min', true ); $min_price_sale = $product->get_variation_sale_price( 'min', true ); $max_price = $product->get_variation_price( 'max', true ); $min_price = $product->get_variation_price( 'min', true ); $price = ( $min_price_sale == $min_price_regular ) ? wc_price( $min_price_regular ) : '<del>' . wc_price( $min_price_regular ) . '</del>' . '<ins>' . wc_price( $min_price_sale ) . '</ins>'; return ( $min_price == $max_price ) ? $price : sprintf('%s', $price); } add_filter( 'woocommerce_variable_sale_price_html', 'mweb_variable_price_format', 10, 2 ); add_filter( 'woocommerce_variable_price_html', 'mweb_variable_price_format', 10, 2 ); add_action('init', 'mweb_get_product_loop_mobile_override'); function mweb_get_product_loop_mobile_override() { remove_filter( 'woocommerce_variable_sale_price_html', 'my_variation_price_format', 10, 2 ); remove_filter( 'woocommerce_variable_price_html', 'my_variation_price_format', 10, 2 ); remove_filter( 'woocommerce_format_price_range', 'mweb_modify_format_price_range', 10, 3 ); }
نظرات خود را با ما به اشتراک بگذارید.
سلام، من میخوام قیمت بجای ۲.۹۰۰.۰۰۰ تومان – ۳.۱۰۰.۰۰۰ تومان به شکل از ۲.۹۰۰.۰۰۰ تومان تا ۳.۱۰۰.۰۰۰ تومان نمایش داده بشه، این از و تا رو چجوری میتونم اضافه کنم؟
درود بر شما تو کد بالا بعد از
“تا” رو اضافه کنید
سلام ، اگر بخواهیم قیمت متغیر پیش فرض به جای کمترین قیمت نمایش بدیم لطفا راهنمایی کنید
سلام
سلام… مرسی از مطلب خوبتون… تو نسخه موبایل تو کاور محصول اما هنوز بازه قیمتی نشون می ده اما وقتی وارد برگه محصول می شیم تک قیمت هست… چه جوری اون بازه قیمتی رو تو نسخه موبایل هم تبدیل کنیم به نمایش کمترین قیمت…؟
درود ، کد زیر را تست کنید :
سلام من از این کد استفاده کردم برای قالب دیجیلند قیمت تو دسکتاپ خذف شد اما در موبایل به همون شکل هست میشه راهنمایی بفرمایین
درود
کد بروز شد.مجدد تست کنید.
سلام
من برای حذف قیمت متغیر ها و فقط نشان دادن بالاترین قیمت هر محصول در سایت کد زیر را در انتهای کدها اضافه کردم:
/**
* Change price format from range to “From:”
*
* @param float $price
* @param obj $product
* @return str
*/
function mweb_variable_price_format( $price, $product ) {
$max_price_regular = $product->get_variation_regular_price( ‘max’, true );
$max_price_sale = $product->get_variation_sale_price( ‘max’, true );
$min_price = $product->get_variation_price( ‘min’, true );
$max_price = $product->get_variation_price( ‘max’, true );
$price = ( $max_price_sale == $max_price_regular ) ?
wc_price( $max_price_regular ) :
‘‘ . wc_price( $max_price_regular ) . ‘‘ . ” . wc_price( $max_price_sale ) . ”;
return ( $max_price == $min_price ) ?
$price :
sprintf(‘%s’, $price);
}
add_filter( ‘woocommerce_variable_sale_price_html’, ‘mweb_variable_price_format’, 10, 2 );
add_filter( ‘woocommerce_variable_price_html’, ‘mweb_variable_price_format’, 10, 2 );
حالا میخوام کاربران وقتی دسته بندی خاصی رو از منوها انتخاب میکنند (فقط در آن دسته بندی) کمترین قیمت نمایش داده بشه.
ممنون میشم راهنماییم کنید
سلام
میتونید با استفاده از شرط و تابع is_product_category( array( ‘shirts’, ‘games’ ) ) این کار رو انجام بدین
سلام وقت بخیر خسته نباشید این کدتون مشکل داره و نمی شه ازش استفاده کرد
با سلام
اصلاح شد