Jump to content

Geolocalización y Ley de consumidores...


moraira

Recommended Posts

Hola visto que poco a poco nos tenemos que poner las pilas (lo de poco a poco va de coña) me parece interesante aprender a manejar las variables de geolocalización. Antes de ponerme a ello me pregunto si algun compañero ya lo ha hecho y me puede guiar un poco.

 

Lo que pretendo es poder identificar en qué país se encuentra un cliente para mostrar o no un CMS, algo parecido a lo que usan las reglas de precios.

 

Al igual que Zara.com pretendo que las condiciones de compra, se muestren sólo para los clientes europeos, (en especial me refiero a donde se dice que estamos obligados a recoger gratuitamente un paquete si el cliente lo quiere devolver)

 

en nuestro caso (y en el de todos) es evidente, una recogida europea son 10-20€ en australia 200€ y la ley nos obliga sólo ha hacerlo en la UE

 

http://blog.sage.es/economia-empresa/cinco-aspectos-que-debe-modificar-tu-tienda-online-para-adaptarse-la-nueva-ley-del-consumidor/

 

Edited by moraira (see edit history)
Link to comment
Share on other sites

Prueba con esto, haces el include en el controlador donde quieres utilizar la variable de geolocalización, en el init del controller esto

include_once(_PS_GEOIP_DIR_.'geoipcity.inc');
$gi = geoip_open(realpath(_PS_GEOIP_DIR_.'GeoLiteCity.dat'), GEOIP_STANDARD);
$record = geoip_record_by_addr($gi, Tools::getRemoteAddr()); 

Luego en el 

$this->context->smarty->assign(array(

Añadimos esto para que nos localice el pais

'country_name' => $record->country_name

Y luego ya en el .tpl utilizamos la variable como queramos

{if $country_name == Spain} Paella, futbol y toros{/if}

 

Interesante post, pillo sitio

  • Like 2
Link to comment
Share on other sites

Perfecto Ventura, me pongo con ello. La verdad es que la geolocalización tiene un montón de utilidades, nosotros usamos reglas de precios por país ya que incluimos los gastos de envio en el precio y enviamos a todo el mundo (la tabla de precios especificos tiene más de 15.000 registros)

 

pero podria servir para ocultar un cms determinado, un modulo o incluso un producto que no quisieramos vender en un país.

 

Me ha llamado la atención el ver que la tienda de Zara directamente oculta menus (condiciones de venta, devoluciones) segun el país que estamos.....

 

muy util si señor

Link to comment
Share on other sites

Utilizando condicionales en los .tpl se podrían hacer muchas cosas. Yo siempre lo he usado para la pagina de producto  pero añadiendolo al modulo o controlador en el que queramos utilizarlo se puede hacer donde se quiera.

  • Like 1
Link to comment
Share on other sites

Revisando el geoipcity.inc he visto que tambien se pueden utilizar entre otras la variable

{$continent_code}

Cuyos codigos serian:

AF	África
AN	Antártica
AS	Asia
EU	Europa
NA	Norte américa
OC	Oceanía
SA	Sur america

Y la :

{$country_code}

para los ISO  de cada pais

  • Like 1
Link to comment
Share on other sites

Hacemos esto en el

FronController.php

Prueba con esto, haces el include en el controlador donde quieres utilizar la variable de geolocalización, en el init del controller esto

include_once(_PS_GEOIP_DIR_.'geoipcity.inc');
$gi = geoip_open(realpath(_PS_GEOIP_DIR_.'GeoLiteCity.dat'), GEOIP_STANDARD);
$record = geoip_record_by_addr($gi, Tools::getRemoteAddr()); 

Luego en el 

$this->context->smarty->assign(array(

Añadimos esto para que nos localice el pais

'country_name' => $record->country_name

Y luego ya en el .tpl utilizamos la variable como queramos

{if $country_name == Spain} Paella, futbol y toros{/if}

 

 

Y ya podemos utilizar la variable en cualquier .tpl de modulos o de la plantilla

Edited by ventura (see edit history)
Link to comment
Share on other sites

  • nadie locked this topic
Guest
This topic is now closed to further replies.
×
×
  • Create New...