نمایش تنها یک قیمت کالای متغیر

vbsupport

تازه وارد
سلام

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

میشه کاری کرد در همه صفحات کمترین قیمت یا حداقل قیمت پیش فرض نمایش داده شود فقط و وقتی وارد صفحه خود کالا شد کمترین و بیشترین را فقط آنجا مشاهده کند!!

 

m0h4mm4d

کاربر عضو
سلام دوستان

سوال ایشون سوال من هم هست . اگر راهنمایی کنید ممنون میشم .

 
آخرین ویرایش توسط مدیر:

ُSajadfa.ir

کاربر عضو
سلام،

کد زیر رو بذارید آخر function.php قالبتون:
 

add_filter('woocommerce_variable_price_html', 'sajadfa_show_minimum_only', 10, 2);
function sajadfa_show_minimum_only( $price, $product ) {
$price = '';
$price .= woocommerce_price($product->get_price());
return $price;
}


اگر حل نشد لطفا اطلاع بدید.

 

m0h4mm4d

کاربر عضو
سلام،

کد زیر رو بذارید آخر function.php قالبتون:
 

add_filter('woocommerce_variable_price_html', 'sajadfa_show_minimum_only', 10, 2);
function sajadfa_show_minimum_only( $price, $product ) {
$price = '';
$price .= woocommerce_price($product->get_price());
return $price;
}


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

 
آخرین ویرایش توسط مدیر:

ُSajadfa.ir

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

add_filter('woocommerce_variable_price_html', 'sajadfa_show_minimum_only', 10, 2);
function sajadfa_show_minimum_only( $price, $product ) {

$variations = $product->get_available_variations();
foreach($variations as $variation){
$variation_id = $variation['variation_id'];
$variation_obj = new WC_Product_variation($variation_id);
$stock = $variation_obj->get_stock_quantity();

if ($stock > 0) {
$price = '';
$price = woocommerce_price($product->get_price());
return $price;
}
else {
$price = '';
$price = $product->get_variation_price( 'min', true );
return $price;
}

}

}


Hope it works ...

 
  • Like
واکنش‌ها[ی پسندها]: mehdiace
بالا