Hace unas semanas un cliente nos solicitó que le añadiéramos un porcentaje de descuento en todos los gastos de envío de su tienda virtual bajo WooCommerce en función del importe total del pedido. Concretamente nos pidió que le aplicáramos un 6% de descuento al importe de los gastos de envío a partir de 180,00 € de gasto total en el pedido del cliente.

Manos a la obra

Para conseguirlo lo que hicimos fue añadir una función PHP en el archivo functions.php de su tema hijo, aunque también la podéis añadir al tema padre si no disponéis de tema hijo, cosa, por otro lado, muy poco recomendable.

Esta es la función PHP que creamos:

Copiar al portapapeles

En la función PHP lo primero que hacemos es comprobar si existe un pedido y leer el importe total del mismo para poder comprobar si es igual o superior a los 180,00 €. En caso de que así sea recorre todos los gastos de envío que se tengan configurados y activos en WooCommerce para aplicarles un descuento del 6%.

Como siempre esperamos que os resulte útil esta función y que le podáis sacar provecho en vuestras tiendas virtuales.

Artículos relacionados

Comentarios

Suscríbete
Notificar de
guest
6 Comentarios
Más antiguos
Más recientes Más votados
César
César
12 de febrero de 2016 14:30

Buenas, despues de añadir la función deja de verse la web, no da error de página, se queda en blanco. Sabes que puede ser?

Un saludo y gracias

Art Project Group
Art Project Group
12 de febrero de 2016 15:07
Responder a  César

En principio el código es correcto, y está funcionando sin problema alguno en el sitio web del cliente.

Comprueba que lo has copiado íntegramente, sin obviar ningún carácter, y que la personalización que hayas realizado sea correcta.

Un saludo.

César
César
12 de febrero de 2016 17:28

Buenas tardes,

es correcto gracias. Una pregunta, si solo quiero aplicarlo a un método de envío? Por que variable debo preguntar?

Un saludo y gracias anticicipadas.

Art Project Group
Art Project Group
12 de febrero de 2016 17:35
Responder a  César

Debes manejar el objeto $rates.

Un saludo.

César
César
16 de febrero de 2016 16:00

Asi?

if ( $rates == ‘España Peninsula’ ){
$rate->cost = 3;
}

Un saludo y gracias de antemano.

Art Project Group
Art Project Group
16 de febrero de 2016 21:25
Responder a  César

Eso tiene toda la pinta de no funcionar :-)

Revisa la estructura del objeto $rates.

Un saludo.

Productos y servicios

Últimas publicaciones

Últimos comentarios

¡Suscríbete!

Lista de correos de APG

PROTECCIÓN DE DATOS: De conformidad con las normativas de protección de datos, le facilitamos la siguiente información del tratamiento: (+)

  • Responsable: Art Project Group.
  • Fines del tratamiento: dar respuesta a las consultas o cualquier tipo de petición que sea realizada por el usuario a través de cualquiera de las formas de contacto que se ponen a su disposición en la página web. Envío de comunicaciones de productos o servicios (con su consentimiento).
  • Derechos que le asisten: acceso, rectificación, portabilidad, supresión, limitación y oposición. Más información sobre el tratamiento en los Política de Privacidad.

¡Lo que contamos en !

Acaba de publicarse #WordPress 7.0: más visual, más rápido y preparado para la IA

Conectores IA integrados
Nuevas superposiciones de navegación
Patrones más fáciles de editar
Revisiones visuales bloque por bloque
Mejor rendimiento y accesibilidad

De momento lo dejamos en espera

20 de mayo de 2026

A partir de #WooCommerce 10.9 se incluirá WooCommerce Additional Variation Images en el core lo que permitirá gestionar galerías en las variaciones de forma nativa.

Gran noticia que se suma a la iniciativa de incluir WooCommerce Brands en la versión 9.4.

¡Este es el camino!

20 de mayo de 2026 | 1