No WooCommerce, o formato de preços de produtos variáveis pode ser um pouco confuso.
Os preços mais altos e mais baixos são separados por um hífen da seguinte forma:
Essa forma de exibir preços de produtos variáveis não é a mais intuitiva do mundo.
Neste tutorial veremos como alterá-lo para que em vez de aparecer como faixa de preço apareça “A partir de 35€”
Sendo o resultado:
Inscreva-se no meu canal:
Para conseguir isso, temos que adicionar o seguinte código no arquivo functions.php do nosso template.
Lembre-se que se você for fazer alterações nos arquivos de template, é aconselhável usar um tema filho e claro fazer um backup do seu site 😉
/** * Change price format from range to "From:" * * @param float $price * @param obj $product * @return str */ function iconic_variable_price_format( $price, $product ) { $prefix = sprintf('%s: ', __('Desde', 'iconic')); $min_price_regular = $product->get_variation_regular_price( 'min', true ); $min_price_sale = $product->get_variation_sale_price( 'min', true ); $max_price = $product->get_variation_price( 'max', true ); $min_price = $product->get_variation_price( 'min', true ); $price = ( $min_price_sale == $min_price_regular ) ? wc_price( $min_price_regular ) : '<del>' . wc_price( $min_price_regular ) . '</del>' . '<ins>' . wc_price( $min_price_sale ) . '</ins>'; return ( $min_price == $max_price ) ? $price : sprintf('%s%s', $prefix, $price); } add_filter( 'woocommerce_variable_sale_price_html', 'iconic_variable_price_format', 10, 2 ); add_filter( 'woocommerce_variable_price_html', 'iconic_variable_price_format', 10, 2 );
Você pode alterar a palavra “De” para outra na variável $prefix = »;
Espero que lhe seja útil 😉
lembranças
Oscar