Si trabajas con productos variables en Woocommerce, y en las variaciones utilizas diferentes precios, habrás observado que en el precio de los productos se muestra un intervalo de precios en vez de un precio único.
Este intervalo de precios se muestra tanto en las fichas de producto como en las páginas de categorías.
Si quisiéramos hacer que se mostrase como cualquier otro producto, y que el precio que mostrase fuese el de la variación más económica, bastaría con:
1º- Tener acceso FTP a nuestra web.
2º- Buscar el archivo functions.php y editarlo. Se encuentra en wp-content/themes/nombre_de_tu_tema/functions.php
3º- Añadir la siguiente función:
// Quitar intervalo de precios por diegol.top function diegol_variacion_precio_formato( $price, $product ) { // Precio Normal $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] ); // Precio Rebajado $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/A partir de: %1$s', 'woocommerce' ), wc_price( $prices[0] ) ) : wc_price( $prices[0] ); if ( $price !== $saleprice ) { $price = '<del>' . $saleprice . '</del> <ins>' . $price . '</ins>'; } return $price; } add_filter( 'woocommerce_variable_sale_price_html', 'diegol_variacion_precio_formato', 10, 2 ); add_filter( 'woocommerce_variable_price_html', 'diegol_variacion_precio_formato', 10, 2 );