Cuando le decimos a WooCommerce que a partir de N cantidad de dólares/pesos el envío será gratuito lo hace pero, no selecciona de forma automática esa opción; sino que da la opción de envío gratuito y envío con costo.
Para solucionar esto utilizaremos este plugin dando click en DESCARGAR
O este bloque de código lo insertaremos en nuestro archivo de functions.php
// Hide shipping when free is available without losing pickup in store
function hide_shipping($rates,$package) {
$new_rates = array();
foreach($rates as $rate_id => $rate) {
if ('free_shipping' === $rate->method_id) {
$new_rates[$rate_id] = $rate;
break;
}
}
if(!empty( $new_rates)) {
foreach( $rates as $rate_id => $rate) {
if('local_pickup' === $rate->method_id) {
$new_rates[$rate_id] = $rate;
break;
}
}
return $new_rates;
}
return $rates;
}
add_filter( 'woocommerce_package_rates', 'hide_shipping', 10, 2 );