En Magavenue que regularmente las mismas preguntas por e-mail. Es por eso que vamos a tomar algunas de las preguntas en el blog, para proporcionar una explicación más clara.

Uno de estos problemas es el siguiente:

"¿Cómo Prestashop , para solicitar el envío gratis a un solo país? o una sola compañía? "

De hecho, la pregunta es perspicaz, si alguna vez un comerciante decide utilizar el cálculo de los gastos de envío por peso y no el precio, por lo que no es posible separar las áreas o los transportistas, para ofrecer fresca puerto.
El lector se enfrenta entonces a un problema:

-O se utiliza un cálculo de los gastos de envío por el precio. Pero usted puede tener el problema de un objeto pesado no muy caro o un objeto muy caro, no muy pesado. Sólo queda esperar que el promedio de los dos ... en fin, esto no es necesariamente la solución ideal para todos.

-O te ofrece el envío de 50 €, pero usted tendrá que ofrecer una parte o la zona en la que utilizan el cliente o el soporte.

En resumen, existe una solución sencilla. Por desgracia, es cambiar una clase de Prestashop. En general, se puede pasar por alto un módulo, pero aquí sería demasiado complicado. Es por eso que le recomendamos que usted ponga en su lugar.

Si opta por realizar, piense antes de hacer cualquier cambio, de realizar una copia de seguridad completa de su tienda, y sobre todo mantener un archivo histórico que los ha cambiado para una posible actualización.

Hablamos de Prestashop 1.3.1, la modificación puede aplicarse a las versiones anteriores, se acaba de tener cuidado donde vas a colocar el código.

En el archivo Cart.php en la carpeta Classes. Usted alrededor del 833 alinean el siguiente código:

if ($ orderTotalwithDiscounts> floatval = ($ free_fees_price) Y floatval (free_fees_price $)> 0)
return $ shipping_cost;

Es evidente que, si la cantidad total de la orden (con cupón incluido) es superior al importe del carro, por lo que ofrecemos el envío (en el momento $ shipping_cost = 0).

Tendremos cambiamos esta línea, de la siguiente manera:

if ($ orderTotalwithDiscounts> = floatval ($ free_fees_price) Y floatval ($ free_fees_price)> 0 Y intval ($ field_id) == 6)
return $ shipping_cost;

Aquí pedimos que el envío está disponible sólo si el área de prestación es igual a 6 (en nuestro ejemplo, hemos creado un área específica cuyo identificador es 6.

También puede limitarse a una única compañía de la siguiente manera:

if ($ orderTotalwithDiscounts> = floatval ($ free_fees_price) Y floatval ($ free_fees_price)> 0 Y intval ($ id_carrier) == 2)
return $ shipping_cost;

Por supuesto que sería posible hacer un módulo para ajustar directamente desde el Back Office, lo transportista o en qué área queremos ofrecer a los gastos de envío. Continuará ...

Palabras clave:

, , ,

19 comentarios por qué no deja el tuyo?

No vamos a hacer comentarios de apoyo por un problema técnico con uno de nuestros módulos. Gracias en contacto con nosotros directamente con nuestro formulario de contacto !

Mathix,

Hemos propuesto una solución sencilla para un usuario lambda puede ponerlo en línea.

Si el demandante debería tener que hacer esto, entonces sí, usted debe utilizar una configuración o de investigación en lugar de la identificación cruda.

Magavenue 26 de octubre 2012 a las 10 h 22 min

hola a todos,

el problema (este no es el método, pero el prestashop problema ... una vez más) es que cuando se edita un portador entonces su cambio id_carrier.
Por lo tanto, no es una solución fiable si que administra el sitio no es el webmaster ya que podría invalidar cualquier transporte gratuito si el administrador quiere cambiar el logo, por ejemplo, el transportista o en otro.

A menos que me equivoque ...

Mathix 04 de octubre 2012 A 15 h 23 min

Hola,

Gracias por el tutorial, pero he intentado en la versión 1.4.7.3, pero mi página no funciona lado FO, yo quería saber si teníamos el mismo control o no?

Gracias de antemano por su ayuda.

Cordialmente

Poupet 14 de julio 2012 a las 13 h 53 min

Gracias por este tutorial!

Abdeslam 23 de mayo 2012 a las 10 horas 09 minutos

Hola Alain,

Por el momento, no hay nada planeado. Pero usted puede ponerse en contacto con nosotros para una cotización.

Magavenue 29 de febrero 2012 a las 11 horas 50 minutos

Escribe una crítica