Ocultar modos de envío para gratuito WooCommerce

¿No te parece una tontería en la mayoría de las ocasiones, estando disponible el envío gratuito, aparezcan otros métodos de envío al finalizar la compra?

Solo se nos ocurre una situación en la que es conveniente que aparezcan otros métodos de envío si existe el envío gratuito: cuando se ofrece entrega urgente o prioritaria... Sino no tiene sentido en absoluto.

ejemplo ocultar envio gratuiro woocommerce

¿Y cómo consigo ocultar otros modos de envio cuando está el gratuito?

Fácil! Añade esto al archivo functions.php del tema hijo de tu WordPress, o bien, crea un plugin para que, si cambias de thema, no pierdas esta configuración::

IMPORTANTE: ANTES DE HACER NADA, COPIA DE SEGURIDAD!

*/
// Ocultar modos de envio cuando está el gratis disponible
function ejr_oculta_envios ($envios) {

	$gratis = array ();

	foreach ($envios as $envio_id => $envio) {
		if ('free_shipping' === $envio -> method_id) {
			$gratis [$envio_id] = $envio;
			break;
		}
	}
	return ! empty ($gratis) ? $gratis : $envios;
}
add_filter ('woocommerce_package_rates', 'ejr_oculta_envios', 100);

--------------------

Si conoces otros plugins de este u otro tipo que puedan ser útiles para cualquier usuario, coméntanos y los compartimos con mucho gusto!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Información sobre protección de datos: 
Responsable: Jaime Gármar. Fin del tratamiento: Controlar el spam, gestión de comentarios. Legitimación: Tu consentimiento. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal. Derechos: Acceso, rectificación, portabilidad, olvido. Contacto: info@clubwpress.com. Información adicional: Más información en la política de privacidad.

3 comments on “Ocultar modos de envío para gratuito WooCommerce”

  1. Buenas, tengo el mismo problema que el comentario pero solo coge el primer envío gratis que aparece, no incluye los envíos gratis que se hayan creado.

  2. Excelente, muchas gracias por el código. Te hago una consulta, si además de ocultar todos los otros métodos de envío quisiera que aparezca también la opción de retirar personalmente, ¿habrá alguna forma de modificar este código para que aparezcan ambas opciones?

    1. Hola!
      En este caso (sin ver la web por dentro y como lo tienes todo configurado) la mejor opción es crear otro modo de envio gratuito pero sustituir la terminología del mismo por recoger en tienda, se ocultarían los demás dejando estos dos modos activos... se me ocurre...
      Un saludo!

NEWSLETTER SIN FILTROS

PATROCINA

© 2017–2023 Club WordPress Emprendedores Online

Aviso Legal & Políticas · CONTACTO
Mantenimiento WordPress Destaca.es