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 por 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 el 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:

, , ,

21 comentarios por qué no deja el tuyo?

No vamos a poner en práctica el apoyo a los comentarios de un problema técnico con uno de nuestros módulos. Gracias en contacto con nosotros directamente con nuestro formulario de contacto !

Tutorial perfecto! Gracias!

Cosmética hombre 29 de abril 2014 a las 9 horas 52 min

níquel! Gracias

Provincia 25 de abril 2014 a las 9 horas 10 min

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 al transportista oa otra.

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.

Atentamente

Poupet 14 de julio 2012 a las 13 h 53 min

Escribe una crítica