Virtuemart restringir el precio de pedido minimo por pais u otros
Hoy he tenido que hacer una modificación sobre Virtuemart en la que se me solicitaba que el precio mínimo para que el envío fuese gratuito estuviese restringido según el país y la provincia del usuario, así que como es costumbre para ayudar a la comunidad y tener un sitio donde poder escribir las cosas y no olvidarme voy a tomar nota en este artículo.
Lo primero que debemos hacer es abrir el archivo administrator/components/com_virtuemart/classes/ps_checkout.php y buscar la siguiente linea:
Encima de esta linea haremos una consulta a la base de datos para extraer informacion del usuario en linea y crearemos dos arrays uno con los paises aceptados y otro con las provincias excluidas, ahi ya cada uno pone lo que necesita o prescinde de uno u el otro array:
Por último modificamos la sentencia if que hemos buscado al principio de forma que quede asi:
De esa forma primero comprobara que el usuario es del pais correcto para optar al porte gratuito si su compra supera el valor especificado en la configuración de la tienda, y luego dentro de la clausula volvemos a comprobar si este usuario es de una de esas provincias, en este caso Ceuta, Melilla, Las Palmas y Santa Cruz de Tenerife saliendo del script si es cierto.

