Envíos gratis y ocultar el resto en woocommerce

con No hay comentarios

Es algo absurdamente sencillo de entender, sin embargo, ha ocasionado más de cientos de problemas y no son pocas las búsquedas realizadas tratando de resolver el siguiente enigma: si mi carrito cumple con los requisitos para el envío gratis, ¿por qué aparecen para seleccionar tanto envío gratis como envío normal?  ¿Es una trampa? ¿Acaso es que aplica una lógica demasiado compleja?

Pues no. El caso es que como con muchas otras cosas relacionadas con “truquejos” en la web, hay demasiada, demasiada, demasiada confusión. Instalaciones desactualizadas, errores, pasos no debidamente detallados… eso sí, casi siempre tienes a mano los datos de contacto para que te lo resuelvan. Gratis no, por supuesto.

¿no os lo creéis? os invito a descubrir el maravilloso mundo de los Glue Records y de los registradores de dominio…

 

Bueno, al grano. Esta guía está probada en WooCommerce 2.6.14 (por cierto, en la tienda online Pez Payaso, no tiene pérdida!!!!), así que en otras versiones no aseguro (ni ganas me quedan de asegurarlo) que funcione.

  • Paso 0: necesitas acceso FTP al servidor.
  • Paso 1: necesitas crear una plantilla hija (Theme Child). Básicamente una carpeta en la ruta /wp-content/themes/ con el mismo nombre que tu plantilla activa pero añadiendo -child. En nuestro caso, la plantilla es la virtue_premium, así que la carpeta es virtue_premium-child. Dentro necesitas crear el style.css y, importante, el functions.php. Vamos, dos archivos, de momento, vacíos.
  • Paso 2: rellenamos el CSS. Os dejo un texto ejemplo para nuestro caso:

/*
Theme Name: Virtue – Premium
Theme URI: https://www.kadencethemes.com/product/virtue-premium-theme/
Description: The Virtue theme is extremely versatile with tons of options, easy to customize and loaded with great features. The clean modern design is built with html5 and css3 and uses the powerful responsive framework from Bootstrap to be a fully responsive and mobile friendly. It’s fully ecommerce (Woocommerce) ready with all the tools you need to design an awesome online store. The versatile design is perfect for any kind of business, online store, portfolio or personal site. We built Virtue with a powerful options panel where you can set things like your home layout, sliders, custom fonts, and completely customize your look without writing any CSS. You are going to love how easy this theme is to work with. Virtue was built and designed by <a href=”http://kadencethemes.com/”>Kadence Themes</a>.
Author: Kadence Themes
Author URI: https://www.kadencethemes.com/
Template: virtue_premium
Version: 1.0.0
*/
/* =Aquí empieza la personalización de tu tema
————————————————————– */

Paso 3: rellenamos el functions.php. Es la parte más importante!!!!!! Pero vamos, que con pegar esto, sobra:

<?php
/*
* Hide shipping rates when free shipping is available.
* Updated to support WooCommerce 2.6 Shipping Zones.
*
* @param array $rates Array of rates found for the package.
* @return array
*/
function my_hide_shipping_when_free_is_available( $rates ) {
$free = array();
foreach ( $rates as $rate_id => $rate ) {
if ( ‘free_shipping’ === $rate->method_id ) {
$free[ $rate_id ] = $rate;
break;
}
}
return ! empty( $free ) ? $free : $rates;
}
add_filter( ‘woocommerce_package_rates’, ‘my_hide_shipping_when_free_is_available’, 100 );
?>

  • Paso 4: vete enfriando la cerveza, que la necesitarás para celebrarlo.
  • Paso 5: has hecho todo lo que tenías que hacer por FTP, sólo te queda ir a la zona de administración de wordpress y activar el tema hijo, que te está esperando.

Y ya está. Vamos, más fácil imposible.

Envíos gratis y ocultar el resto en woocommerce