Agencia de Publicidad y Marketing online
Bilbao - Bizkaia

Mostrar un precio “Desde” en los productos variables de Woocommerce

publicado el 18 de Mayo de 2017 | en e-Commerce con 0 Comentario(s)

precio-desde-en-bodegas-zintzo

Woocommerce incorpora la opción de crear productos que cuenten con variaciones. Ejemplos para verlo claro pueden ser un vino que se vende en packs de 6 ó 12 unidades o las dimensiones a elegir a la hora de comprar una cama. En este tipo de productos el precio, por defecto, se muestra como un rango ( 20 – 40€ ). Pero una alternativa más llamativa comercialmente hablando es mostrar un precio Desde en los productos variables de Woocommerce.

 

¿Pero cómo vamos a poner el precio Desde en los productos variables de Woocommerce ?

Para hacer esto casi seguro que existe algún plugin pero como siempre en Irudigital somos más partidarios de utilizar un poco de código por varias razones. Buscamos evitar recargar la web con plugins que pueden estar añadiendo funciones que no vamos a necesitar. Y nos quitamos de en medio la carga de archivos o código css inline que retrasen la carga de la web.

Y conseguimos justo lo queremos con sólo…

añadir el siguiente código en el archivo functions.php

 

add_filter( 'woocommerce_variable_sale_price_html', 'wc_custom_variation_price_format', 10, 2 );
add_filter( 'woocommerce_variable_price_html', 'wc_custom_variation_price_format', 10, 2 );
function wc_custom_variation_price_format( $price, $product ) {
// Main Price
$prices = array( $product->get_variation_price( 'min', true ), $product->get_variation_price( 'max', true ) );
$price = $prices[0] !== $prices[1] ? sprintf( __( 'Desde: %1$s', 'woocommerce' ), wc_price( $prices[0] ) ) : wc_price( $prices[0] );
// Sale Price
$prices = array( $product->get_variation_regular_price( 'min', true ), $product->get_variation_regular_price( 'max', true ) );
sort( $prices );
$saleprice = $prices[0] !== $prices[1] ? sprintf( __( 'Desde: %1$s', 'woocommerce' ), wc_price( $prices[0] ) ) : wc_price( $prices[0] );
if ( $price !== $saleprice ) {
$price = '<del>' . $saleprice . $product->get_price_suffix() . '</del> <ins>' . $price . 
$product->get_price_suffix() . '</ins>';
}
return $price;
}

 

Incluso se puede personalizar un poco

Lo único que hay que hacer es cambiar la palabra Desde para sustituirla por otra expresión localizando las dos líneas donde aparece esté código:

 

sprintf( __( ‘Desde: %1$s’

 

Podemos cambiar el “Desde: ” y poner en su lugar algo como “A partir de: ” o “From: ” si la web es en inglés.

Mostrar un precio Desde en los productos variables de Woocommerce

En caso de querer ponerlo en euskera u otro idioma que por sintaxis el añadido vaya después de la cantidad, se borra el “Desde: ” y se añade el texto después de “%1$s ” dejando un espacio.

Por ejemplo, en euskera sería:

sprintf( __( ‘%1$s -tik aurrera

 

Y así de fácil hemos puesto el precio Desde en los productos variables de Woocommerce.

Comparte:
Share on Facebook0Google+5Tweet about this on TwitterPin on Pinterest1Share on LinkedIn17Email to someone

Sobre el autor: Josu Soleguia

Desarrollador web front y back end con algo de geek, algo de fotógrafo, mucho de friki (de los de antes, de los buenos) y un poco de chico para todo.

Entradas relacionadas


Deja un comentario