نمایش کمترین و بیشترین قیمت محصول متغیر در ووکامرس

میانگین امتیاز 0 / 5. تعداد امتیاز: 0

آنچه در این مقاله می‎‌خوانید...

مقدمه

افزودن محصولات متغیر در ووکامرس به شما این امکان را می‌دهد که گزینه های مختلفی مانند اندازه، رنگ، و دیگر ویژگی ها را برای محصولات خود ارائه دهید. این ویژگی بسیار کاربردی است، اما نمایش قیمت های متغیر می‌تواند چالش برانگیز باشد. در این مقاله، قصد داریم نحوه نمایش کمترین و بیشترین قیمت محصول متغیر در ووکامرس را با استفاده از کدهای سفارشی و افزونه ها بررسی کنیم. همچنین به نحوه بهینه سازی این محتوا برای موتورهای جستجو با یوست سئو خواهیم پرداخت.

اهمیت نمایش کمترین و بیشترین قیمت محصول متغیر در ووکامرس

وقتی محصولی دارای چندین قیمت متفاوت است، مشتریان معمولاً می‌خواهند کمترین و بیشترین قیمت آن را ببینند. نمایش این اطلاعات به شکل درست، تجربه کاربری را بهبود می‌بخشد و باعث افزایش فروش می‌شود. چرا که کاربر در نگاه اول می‌تواند اطلاعات موردنیاز خود را از محصول دریافت کند و نیازی به جستجو و بررسی قیمت های مختلف نخواهد داشت. نمایش کمترین و بیشترین قیمت محصول متغیر به شفافیت و اعتماد بیشتر مشتری کمک می‌کند.

روش‌های مختلف نمایش کمترین و بیشترین قیمت محصول متغییر در ووکامرس

ووکامرس به صورت پیش فرض، در هنگام نمایش محصولات متغیر، بازه قیمتی را به نمایش می‌گذارد. با این حال، این روش ممکن است همیشه برای همه فروشگاه ها مناسب نباشد. برخی از فروشگاه ها ترجیح می‌دهند تنها کمترین یا بیشترین قیمت را نمایش دهند.

برای این کار، می‌توان از افزونه ها و یا کدهای سفارشی استفاده کرد.

استفاده از کدهای سفارشی برای نمایش کمترین قیمت محصول متغیر

اگر به دنبال راهی هستید که بدون نصب افزونه و فقط با استفاده از کد، کمترین قیمت محصول متغیر را نمایش دهید، می‌توانید از کد زیر استفاده کنید:

				
					add_filter( 'woocommerce_variable_sale_price_html', 'wc_wc20_variation_price_format', 10, 2 );
add_filter( 'woocommerce_variable_price_html', 'wc_wc20_variation_price_format', 10, 2 );
function wc_wc20_variation_price_format( $price, $product ) {
// Main Price
$prices = array( $product->get_variation_price( 'min', true ), $product->get_variation_price( 'max', true ) );
$price = $prices[0] !== $prices[1] ? sprintf( __( '%1$s', 'woocommerce' ), wc_price( $prices[0] ) ) : wc_price( $prices[0] );
// Sale Price
$prices = array( $product->get_variation_regular_price( 'min', true ), $product->get_variation_regular_price( 'max', true ) );
sort( $prices );
$saleprice = $prices[0] !== $prices[1] ? sprintf( __( '%1$s', 'woocommerce' ), wc_price( $prices[0] ) ) : wc_price( $prices[0] );
if ( $price !== $saleprice ) {
$price = '<del>' . $saleprice . '</del> <ins>' . $price . '</ins>';
}
return $price;
}
				
			

در صورتی که مایلید به جای نمایش کمترین قیمت محصول متغیر، قیمت محصول متغیر بصورت “شروع قیمت از” به کاربران در بخش محصول، صفحه محصول و صفحات فروشگاه و آرشیو محصولات نمایش داده شود از این کد PHP در فایل Function.php استفاده نمایید.

				
					add_filter( 'woocommerce_variable_sale_price_html', 'custom_variable_price_range', 10, 2 );
add_filter( 'woocommerce_variable_price_html', 'custom_variable_price_range', 10, 2 );
function custom_variable_price_range( $price_html, $product ) {
    $prefix     = __('شروع قیمت از', 'show-only-lowest-prices-in-woocommerce-variable-products');
    $min_price  = $product->get_variation_price( 'min', true );
    $suffix = $product->get_price_suffix( $price = '', $qty = 1 );
    /* If all variations have same price not display prefix */
    $max_price  = $product->get_variation_price( 'max', true );
    if( $min_price == $max_price ) 
        return wc_price( $min_price ) . $suffix;
    return $prefix . ' ' . wc_price( $min_price ) . $suffix;
}
				
			

این کد کمترین قیمت محصول را نمایش می‌دهد و اگر تمامی قیمت‌ها یکسان باشند، فقط همان قیمت نمایش داده می‌شود.

استفاده از کدهای سفارشی برای نمایش بیشترین قیمت محصول متغیر

اگر می‌خواهید بیشترین قیمت محصول متغیر نمایش داده شود، از کد زیر می‌توانید استفاده کنید:

				
					add_filter( 'woocommerce_variable_sale_price_html', 'con_show_max_variation_price_only', 10, 2 );
add_filter( 'woocommerce_variable_price_html', 'con_show_max_variation_price_only', 10, 2 );
function con_show_max_variation_price_only( $price, $product ) {
// Main Variation Price
$prices = array( $product->get_variation_price( 'max', true ), $product->get_variation_price( 'min', true ) );
$price = $prices[0] !== $prices[1] ? sprintf( __( '%1$s', 'woocommerce' ), wc_price( $prices[0] ) ) : wc_price( $prices[0] );
// Sale Variation Price
$prices = array( $product->get_variation_regular_price( 'max', true ), $product->get_variation_regular_price( 'min', true ) );
sort( $prices );
$saleprice = $prices[0] !== $prices[1] ? sprintf( __( '%1$s', 'woocommerce' ), wc_price( $prices[0] ) ) : wc_price( $prices[0] );
//Output
if ( $price !== $saleprice ) {
	$price = '<span style="display:none;">' . $saleprice . '</span> <ins>' . $price . '</ins>';
	}
	return $price;
}
				
			

این کد به شما این امکان را می‌دهد که بیشترین قیمت را نمایش دهید و اگر قیمت ها یکسان باشند، همان قیمت نشان داده می‌شود.

استفاده از افزونه‌ها برای نمایش قیمت

اگر به جای استفاده از کدها به دنبال راهی آسان تر هستید، می‌توانید از افزونه های آماده استفاده کنید. یکی از این افزونه ها، Variation Price Display Range for WooCommerce است که به شما اجازه می‌دهد کمترین و بیشترین قیمت محصول را به راحتی و بدون نیاز به کد سفارشی نمایش دهید.

نمایش کمترین و بیشترین قیمت محصول متغییر در ووکامرس

ویژگی‌های افزونه:

  • نمایش کمترین و بیشترین قیمت
  • پشتیبانی از محصولات متغیر با قیمت های متفاوت
  • امکان تنظیم نحوه نمایش قیمت

این افزونه برای کاربرانی که دانش کدنویسی ندارند، یک راه حل ساده و کارآمد محسوب می‌شود.

نتیجه گیری

نمایش صحیح کمترین و بیشترین قیمت محصول متغیر در ووکامرس می‌تواند تجربه کاربری بهتری برای مشتریان شما فراهم کند و باعث افزایش فروش شود. با استفاده از کدهای سفارشی و یا افزونه هایی مانند Variation Price Display Range for WooCommerce، شما می‌توانید به راحتی این قابلیت را به فروشگاه آنلاین خود اضافه کنید.

2 نظر در “نمایش کمترین و بیشترین قیمت محصول متغیر در ووکامرس

  1. سلام وقت بخیر من تمام اموزش های شمارو انجام دادم ولی متاسفانه اعمال نمیشه و حتی کش هم پاک میکنم امکانش هست راهنمایی بکنید به چه صورت میتونم این مورد را حل کنم؟

    1. احمد رضا گفت:

      سلام خدمت شما، لطف کنید بهم تلگرام پیام بدید بیام با انی دسک واستون درست کنم.
      @darkroz

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *