Wyświetlanie najniższej ceny wariantu dla produktów WooCommerce. Funkcja pokazuje najniższą cenę spośród wszystkich wariantów dla danego produktu na liście kategorii oraz w shortcodach.
Dodatkowo można dodać przed lub po cenie dopisek np. „Od:”.
add_filter( 'woocommerce_variable_sale_price_html', 'investnet_variable_product_price', 10, 2 );
add_filter( 'woocommerce_variable_price_html', 'investnet_variable_product_price', 10, 2 );
function investnet_variable_product_price( $in_price, $in_product ) {
// Cena regularna
$in_prices = array( $in_product->get_variation_price( 'min', true ), $in_product->get_variation_price( 'max', true ) );
$in_price = $in_prices[0]!==$in_prices[1] ? sprintf(__('Od: %1$s', 'woocommerce'), wc_price( $in_prices[0] ) ) : wc_price( $in_prices[0] );
// Cena promocyjna
$in_prices = array( $in_product->get_variation_regular_price( 'min', true ), $in_product->get_variation_regular_price( 'max', true ) ); sort( $in_prices ); $v_saleprice = $in_prices[0]!==$in_prices[1] ? sprintf(__('Od: %1$s','woocommerce') , wc_price( $in_prices[0] ) ) : wc_price( $in_prices[0] );
if ( $in_price !== $v_saleprice ) { $in_price = '<del>'.$v_saleprice.$in_product->get_price_suffix() . '</del> <ins>' . $in_price . $in_product->get_price_suffix() . '</ins>';
}
return $in_price;
}