Gastos de envio en Woocommerce
Cada día hay más e-commerce en internet y es por eso que si tienes una tienda online o la estas configurando esta entrada es para ti.
Hoy vamos con una de las herramientas más conocidadas de Wordpress y el plugin de WooCommerce que nos ayudará a crear nuestra propia tienda online.
Una vez que estamos configurando nuestros gastos de envio en nuestro WooCommerce se nos presenta varias opciones.
- Poner solo un gasto de envio, por ejemplo: 5€ de Gasto de Envio.
- Poner solo un gasto de envio, en esta ocasión gratuito: Gastos de envio incluidos.
- La típica poner el de pago y el gratuito.
Si escogemos la última nos saldrá que el cliente puede escoger que gastos de envio quiere pagar. Ahora si estas ofreciendo uno de pago y otro gratuito la gente ira siempre al gratuito y esto no tiene mucho sentido, ¿verdad?.
Ahora os voy a enseñar que hay un código para ocultar el gasto de envio gratuito y sin necesidad de plugins.
¿Como quitar los gastos de envio gratuito en WooCommerce?
Con el siguiente código se pondrá de forma automatica el gasto de envio que tengas configurado. Por ejemplo:
Si tienes configurado que apartir de 99€ los gastos de envio serán gratuitos, cuando el cliente pase de ese precio con los productos o servicios que ofrezcas, le saldrá automaticamente en el checkout que su gasto de envio será gratuito.
Vamos al código
- Desde tu panel de administración de WordPress ir – «=>Apariencia => Editor«.
- A la derecha del editor, en la sección «Plantillas» haz clic en «Funciones del tema» o «functions.php» .
- Pega el siguiente fragmento de código al final del archivo functions.php.
A continuación te enseño el código que tienes que usar para que te salga automaticamente que gastos de envio tiene el cliente.
Con el siguiente código:
/**
* 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 );
Así es como me quedo a mi en una tienda que hice en este verano 2021.
Imágenes de la tienda de Llamativo.es
Con Plugins – WC Hide Shipping Methods
Para ocultar las otras opciones de envio usando un plugin y sin complicarte la vida, también la hay. Yo sigo prefieriendo el modo del código ya que para mi es más fácil.
El plugin que escogemos para esta tarea se llama WC Hide Shipping Methods. Un plugin gratuito que nos sirve para hacer exactamente lo mismo que arriba pero sin tener que escribir nada de código.
También podemos ir a:
- Plugins => Añadir Nuevo
- Indroducir el nombre de WC HIDE SHIPPING METHODS en la caja de busqueda.
- Una vez que aparezca, lo instalamos.
Después tendremos que ir a: WooCommerce => Ajustes => Ir a la pestaña de Envío => Opciones de envío.
Si hacemos un poco de scroll y vamos a la última parte nos saldrá algo totalmente nuevo.
Ahora tenemos 2 opciones para escoger. En principio con que lo dejemos como esta y le demos a «Guardar los cambios» bastará para solucionar el problema. Así de simple.
Conclusión:
En mi caso me parece más sencillo instalar un código que tener otro plugin instalado y haciendo la tienda online aún más pesada para el usuario. Es verdad que si estas empezando y le tienes miedo a los códigos y las plantillas es una buena opción el tener este tipo de plugins.
También la opción de poner no solo un gasto de envio sino de poner varios tipos de gastos de envio dependiendo de la elección de productos ya sea con copones o sin ellos para poder poner uno o varios tipos de gastos en nuestro e-commerce.
Si tienes dudas no dudes en comentar y te ayudaré siempre que este de mi mano.
Espero que te haya servido como me sirvio a mi.
Hola, buen artículo. Me sabrías que puedo hacer si tengo un envío gratuito y mezclo con productos en oferta y quiero que esos productos en oferta reste para el envío gratuito. Ejemplo: tengo 3 productos que suman 100 € y 2 en oferta que suman 40, si tengo en el envío gratis a partir de 100€ no me debería aparecer la opción de envío gratuito.
Buenas David, ya hace como un par de años que hice este post y te soy sincero se me olvido. Lo hice para una web llamada llamativo.es y realmente estuve toqueteando todo para que me diera los resultados optimos. A veces le quitaba precio y otras veces le añadia dependiendo del producto. Lo que se es que tuve bastante problemas con el IVA.
Se que en prestashop con el tema de cupones ese poblema se te hubiera solucionado. No se si en WooCommerce se puede hacer algo parecido.
Lo siento no poderte contestar a tu solución
Hola, en mi caso quiero hacer lo contrario. Para un grupo de productos, no quiero que haya gastos de envío gratis. Por defecto lo tengo puesto para compras de más de 40€ pero para una categoría quiero cobrar los gastos.
Muchas gracias!
Susana gracias por escribir, hace tiempo que no uso este plugin, no obstante, yo estuve probando todo tipo de variables hasta que consegui lo que queria. Productos con IVA, productos con descuentos y demás. No se si llegue a tocar algo de codigo o no.
Por desgracia actualmente no me acuerdo de la solución ya que me queda algo lejos desde que lo publique y se me ha olvidado literalmente.
Si encuentras la respuesta no dudes en publicarla.
Muchas gracias por comentar y lo siento por no poderte ayudar.
hola buenas noches tengo un problema en una web, en el precio del producto me sale & free shipping y no se por que dice eso por que en las configuraciones no hay nada de free shipping ya quitamos todo pero sigue saliendo eso en el precio, que se puede hacer?
Edelwis buenos días, lo hice en su momento y me salio bien. Ya actualmente tendria que hacerlo nuevamente y pasarme un par de días para averiguar el método diferente de hacerlo, también hay que tener en cuenta los factores como las actualizaciones de Wordpress y los plugins que van cambiando, también el muchas veces afecta el theme que estés utilizando.