הצגת המחיר המקורי במוצרים עם וריאציות

באופן הרגיל, במוצרים עם וריאציות שיש להם מחיר מבצע, ווקומרס מראה רק את המחיר מבצע, בניגוד למוצרים רגילים שם מופיע גם המחיר המקורי עם קו חוצה, זה די מטריד בעיקר כאשר מפרסמים מבצע באתר, אבל במחיר לא רואים שום זכר למבצע, אז הנה קוד שיסדר את זה.

				
					add_filter('woocommerce_get_price_html', 'elex_display_striked_out_price_for_variable', 200, 2);
function elex_display_striked_out_price_for_variable($price='', $product)
{
$reg_price = '';
if(!$product->is_on_sale()){
return $price;
} 
if($product->is_type( 'variable' ))
{
$variations = $product->get_children();
$reg_prices = array();
$sale_prices = array();
foreach ($variations as $value) {
$single_variation=new WC_Product_Variation($value);
array_push($reg_prices, $single_variation->get_regular_price());
array_push($sale_prices, $single_variation->get_price());
}
sort($reg_prices);
sort($sale_prices);
$min_price = $reg_prices[0];
$max_price = $reg_prices[count($reg_prices)-1];
if($min_price == $max_price)
{
$reg_price = wc_price($min_price);
}
else
{
$reg_price = wc_format_price_range($min_price, $max_price);
}
$min_price = $sale_prices[0];
$max_price = $sale_prices[count($sale_prices)-1];
if($min_price == $max_price)
{
$sale_price = wc_price($min_price);
}
else
{
$sale_price = wc_format_price_range($min_price, $max_price);
}
$suffix = $product->get_price_suffix($price);
return wc_format_sale_price($reg_price, $sale_price).$suffix;
}
return $price;
}
				
			

כתיבת תגובה

האימייל לא יוצג באתר.

קורס אלמנטור מתקדם

12 טיפים מהירים לשיפור עיצוב האתר

הרשמה לניוזלטר

כדאי לכם ;)

רגע, יש לי עוד..

סליחה שאני מפריע ככה, אבל ממש עכשיו הוצאתי קורס חדש.

קורס אלמנטור מתקדם

ועכשיו יש הנחה מיוחדת!!