هنگامی که ما محصول متغیری در ووکامرس و در سایت وردپرسی خودمون تعریف میکنیم، قیمت اون در باکس محصول، صفحه محصول و صفحات فروشگاه و آرشیو محصولات بصورت (کمترین قیمت – بیشترین قیمت) نمایش داده میشود که این شکل نمایش شاید مطلوب شما نباشد و اصلا موجب سردرگمی خریدار و یا حتی انصراف مشتری از خرید شود. شاید این مطلوب ما نباشد که کمترین و بیشترین قیمت محصول در نگاه اول به مشتری نمایش داده شود و بخواهیم فقط در ابتدا و نگاه نخست به باکس یا صفحه محصول، مشتری بیشترین قیمت محصول متغیر ما را ببیند.
مثلا فرض کنید که شما یک صفحه محصول تعریف کردهاید که در آن هم خود کتاب را به عنوان یک محصول فیزیکی و هم نسخه صوتی آن را به عنوان یک محصول دانلودی و هم ترکیب آنها را به فروش میرسانید. شما برای تعریف چنین صفحه محصولی از تنظیمات ووکامرس محصول متغیر را انتخاب میکنید. پس از تعریف این محصولات در یک صفحه چون شما تنظیمات محصول متغیر ووکامرس را انتخاب کردهاید در صفحه محصول و همچنین باکس محصول قیمت محصول بصورت 2 قیمتی نمایش داده میشود. یکی از این قیمت ها مربوط به کمترین قیمت محصول شماست (که ممکن است نسخه صوتی کتاب باشد) و دیگری بیشترین قیمت محصول متغیر (که ممکن است متعلق به ترکیب نسخه چاپی و صوتی کتاب باشد) میباشد. در این حالت نمایش قیمت این کتاب بصورت 2 قیمتی شاید حرفه ای نباشد و ما بخواهیم مشتری در نگاه اول فقط بیشترین قیمت محصول متغیر را ببیند.
ما در این مقاله به دو روش به شما آموزش میدهیم که چگونه فقط بیشترین قیمت محصول متغیر را در ووکامرس نمایش دهید:
(توجه داشته باشید که با اعمال هر کدام یک از دو روش گفته شده، تغییرات نمایش قیمت بر روی تمامی محصولات متغیر رخ میدهد و فقط محدود به یک محصول خاص و مد نظر شما نیست)
1. نمایش بیشترین قیمت محصول متغییر در ووکامرس با کد PHP
در زیر یک کد PHP برای تغییر این سبک نمایش قرار داده شده است که این کد باعث میشود که قیمت درج شده زیر باکس محصول و در صفحه محصول و فروشگاه و صفحات آرشیو محصولات از سبک (کمترین قیمت محصول – بیشترین قیمت محصول) به سبک (بیشترین قیمت محصول) تغییر کنید و بطور کلی فقط بیشترین قیمت آن محصول در صفحه محصول و باکس محصول نمایش داده شود.
برای اعمال این تغییر در سایت خود تنها کافی است که کد PHP زیر را کپی کرده و در سند functions.php قالبتان (یا اگر از چایلد تم استفاده میکنید در سند functions.php چایلد تم قالب سایتتان) قرار دهید تا این تغییر بر روی تمامی محصولات متغیر شما اعمال شود.
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;
}
2. نمایش بالاترین قیمت محصول متغییر در ووکامرس با افزونه
برای نمایش بیشترین قیمت محصول متغیر در ووکامرس میتوانید به جای استفاده از کد، از افزونه استفاده کنید. برای این کار یکی از افزونههای خوب حال حاضر که به رایگان در مخزن وردپرس وجود دارد، افزونه Variation Price Display For WooCommerce است.

این افزونه به شما اجازه میدهد تا به آسانی فقط بیشترین قیمت محصول متغیر را نمایش دهید و حتی شما میتوانید عبارتی برای قبل و بعد از قیمت خود مشخص نمایید.

سلام من از کد که گفتین استفاده کردم و اعمال شد ولی بعد از چند وقت که نگا کردم بازم کمترین قیمت نشون میده دوباره کد رو زدم درست نشد افزونه رو هم امتحان کردم نشد کش رو هم پاک کردم نمیشه دیگه
سلام
بطور کلی کد هیچ اشکالی نداره و بدرستی روی سایتهای مختلفی که خود بنده استفاده کردم کار کرده و دوستان عزیزی هم که اینجا کامنت گذاشتن استفاده کردن و کاملا موفقیت آمیز بوده.
شما باید پوسته سایتتون و یا احتمالا تداخلات ووکامرس با سایر افزونههای سایتتون رو بررسی کنید و ببینید کدوم افزونه های میتونن قیمت محصول متغیر ووکامرس رو دستخوش تغییر کنند و با کد یا افزونه معرفی شده تداخل داشته باشن.
خیلی ممنون
در سایتم استفاده کردم واقعا عالی و مفید بود
خواهش میکنم
خیلی خوشحالم براتون مفید بوده
بهتون پیشنهاد میکنم که سایر مقالات سایت رو هم مطالعه کنید.
قطعا مطالب و نکات خیلی خوبی برای مدیریت سایت وردپرسیتون یاد خواهید گرفت.
خیلی خیلی ممنونم از اینکه این مطلب مفید رو در اختیار گذاشتید
خواهش میکنم، سلامت باشید
خیلی خوشحالم از این که این مقاله براتون مفید بوده و تونسته رضایت شما رو در پی داشته باشه.
سلام وقتتون بخیر
بنده طراح سایت هستم سوالی داشتم از خدمتتون مقالهای تحت عنوان نمایش بیشترین قیمت متغیر ها را مطالعه کردم و سوالی داشتم از خدمتتون اینکه چطور میتونم برای محصولم که دو تا متغیر داره توی صفحه اصلی توی کاروسل اولئمحصولات قیمت متغیر اول نمایش داده بشهو توی کاروسل دوم محصولات قیمت متغیر دوم نمایش داده بشه و کاربر با ورود به هر محصول همه ی متغیر هارو بتونه بررسی و انتخاب کنه. مثلا محصول عطر دارم و دو متغیر عطر اصل 100 میل و عطر اقتصادی 100 میل دارم چطور میتونم این محصولو طوری توی صفحه اصلی بزارم که توی کاروسل اولی محصولات؛ محصولم با قیمت عطر اصل 100 میل نمایش داده بشه و توی کاروسل دوم محصولاتم، محصولم با قیمت عطر اقتصادی 100 میل نمایش داده بشه؟ ممنون میشم راهنماییم بفرمایید.
این کار تنها با تسلط بر کدنویس php و ادغام اون با افزونه صفحهساز سایتتون مقدور هست.
سلام خیلی ممنون یک دنیا ممنون که اموزش دادید
سلام دوست عزیز، خوشحالم که براتون مفید بوده و بی نهایت متشکرم که وقت گذاشتید و با نظرتون به ما انرژی دادید.