Avisos
Vaciar todo

[Resuelto] Ayuda con los metodos de envio WooCommerse  

 
Jesús
 Jesús
Usuario eminente

Hola.

A ver si consigo explicarme.

Tengo la tienda configurada de manera de que los costes de envío son 5 euros, pero si la compra llega a los 100 es gratuita.

Cuando ocurre eso, que llegas a los 100 siempre vi absurdo que WooCommerse en la pasarela de pago da la opción al cliente de elegir entre pagar los 5 euros o hacer el envio gratuito. Nunca nadie va a indicar pagar 5 euros cuando tiene la opción gratuita.

Encontré el siguiente código que hace justamente eso, que cuando el envio es gratuito elimina la opción de los 5 euros en el carrito de compra.

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 );

Pues bien, hasta ahí todo correcto y ha funcionado perfectamente. Ahora queremos añadir la recogida local. Dicho código funciona correctamente cuando son compras inferiores a 100. Te da la opción de enviarlo por 5 euros o gratis recogiéndolo en tienda.

El problema viene, cuando supera los 100 euros. Que únicamente muestra el envio gratuito. La opción de recogida en local ese código la borra. Y aunque ambos métodos son gratuitos queremos que el cliente pueda escoger si quiere que se lo enviemos o lo recoge en tienda ahorrándose los tiempos de espera del envio.

Si borro el código, cuando son más de 100 euros aparecen las 3 opciones, que es lo que no me gusta y veo absurdo, sale envio 5 euros, gratuito y recogida en local gratis.

¿Alguien me podría ayudar a modificar ese código o algún plugin que haga lo que quiero hacer?

Muchas gracias y un saludo.

Contenido solo visible a usuarios registrados

Respondido : 12/11/2020 11:19 am
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Jesus.

Puedes utilizar el siguiente plugin:

-> https://wordpress.org/plugins/wc-hide-shipping-methods/

 

Una vez instalado y activado.

.- Accede a Woocommerce -> Ajustes -> Envios -> Opciones de envío

.- Selecciona la opción " Hide all other shipping methods and only show "Free Shipping" and "Local Pickup "

screenshot joomlero cp95.webjoomla.es 2020.11.12 13 05 51

 

El resultado es este:

screenshot joomlero cp95.webjoomla.es 2020.11.12 13 07 39

 

Un saludo

 

Respondido : 12/11/2020 12:08 pm

Gestor de Contraseñas - VPN Conexión Segura - Gestor 2FA (Segundo Factor de Autenticación

Jesús
 Jesús
Usuario eminente

Genial. Funciona perfectamente. Muchas gracias!!!

Hay veces que opciones y configuraciones tan basicas no vienen por defecto en WooCoomerse... En fin...

De nuevo gracias y un saludo!!!

Respondido : 12/11/2020 12:15 pm
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Jesús.

 

Nada Gracias a ti.

Pues sí, tienes toda la razon pero como tu dices, es lo que hay 😉 

 

Me alegra que funcionara 😀 

Ya sabes, cualquier consulta que tengas no dudes en comunicarlo 😉 

 

Cerramos el tema.

Un saludo

Respondido : 12/11/2020 12:43 pm

optimiza-automaticamente-todas-las-imagenes-de-tu-wordpress