Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Cambiar idioma según país del usuario
#1
Hola, hoy les traigo un simple script que permite redireccionar a los usuarios según el país de origen.




Código PHP:
 <?php
     
    session_start
();
 
   $location_reload = isset($_SESSION["loc_reload"]) ? (bool)$_SESSION["loc_reload"] : false;
 
   if(!$location_reload){
$location visitor_location();

   if(in_array($location["country"], array("AR""ES""UR""MX"))){

   $_SESSION["loc_reload"] = true;

   header("location: es/index.php");

   exit;

   }else if(in_array($location["country"], array("US"))){

   $_SESSION["loc_reload"] = true;

   header("location: en/index.php");

   exit;

   }

 
   }
 
    
    function visitor_location
(){
 
   $client = @$_SERVER["HTTP_CLIENT_IP"];
 
   $forward = @$_SERVER["HTTP_X_FORWARDED_FOR"];
 
   $remote = @$_SERVER["REMOTE_ADDR"];
 
   $result = array("country"=>"""city"=>"");
 
   if(filter_var($clientFILTER_VALIDATE_IP)){
 
   $ip $client;
 
   }elseif(filter_var($forwardFILTER_VALIDATE_IP)){
 
   $ip $forward;
 
   }else{
 
   $ip $remote;
 
   }
 
   $ip_data = @json_decode
    
(file_get_contents("http://www.geoplugin.net/json.gp?ip=".$ip));
 
   if($ip_data && $ip_data->geoplugin_countryName != null){
 
   $result["country"] = $ip_data->geoplugin_countryCode;
 
   $result["city"] = $ip_data->geoplugin_city;
 
   }
 
   return $result;
 
   }
 
   ?>


  
Básicamente lo que este script hace es obtener la geoposición del usuario y de acuerdo a eso redireccionarlo al directorio seleccionado.

La lista de paises  y los directorios se pueden editar en:

$location = visitor_location();
   if(in_array($location["country"], array("AR", "ES", "UR", "MX"))){
   $_SESSION["loc_reload"] = true;
   header("location: es/index.php");
   exit;
   }else if(in_array($location["country"], array("US"))){
   $_SESSION["loc_reload"] = true;
   header("location: en/index.php");
   exit;
   }


Saludos! Espero que sirva!
[Imagen: 9jhwu20.png]
WWW
#2
Algo asi tenia pensado hacer. Pero no tan así jaja
Muchas gracias! Me va a servir bastante para una web y con unas modificaciones puedo adaptarlo muy bien!

Gracias!
Se buscan colaboradores para comenzar con un foro de programación en general.

[url]www.programarg.com[/url]
WWW
#3
Buena info, ya había adaptado el google traductor, que por cierto es muy malo! jaja
#4
claro que sirve gracias por dejarlo , es algo mas que útil saludos 
#5
Yo en mi web uso un pequeño truco desde hace bastante tiempo y no me a dado ningun problema. Una vez logrado el pais del visitante, o el escogiendo el idioma, hago uso de:

Código PHP:
$Palabra "Hola"; require ("idiomas/".$_SESSION["Idioma"].".txt"); echo $Palabra

Por lo cual "Hola" lo traduce automagicamente al idioma seleccionado por la visita, sin así tener que hacer la misma pagina para todos los idiomas distintos. Solo hace falta un txt donde estén dichas traducciones.
#6
:o , perfecto para los que tienen webs con contenido universal Gran sonrisa
MIS OBJETIVOS EN SKYLIUM

-Llegar a 50   mensajes [✔]
-Llegar a 100 mensajes [✔]
-Llegar a 250 mensajes [✔]
-Conseguir 25 de reputacion []



Posibles temas similares...
Tema Autor Respuestas Vistas Último mensaje
  [Duda] Con respecto de cambiar color a una plantilla con seleccionador Hostingbir 0 310 21-09-2016, 03:04 PM
Último mensaje: Hostingbir
Pregunta Cambiar a versión movil celticslment 12 908 02-12-2014, 10:43 PM
Último mensaje: YamaT
  Cambiar el Zoom de mi sitio web Cine-lan 4 528 17-07-2014, 06:04 PM
Último mensaje: Vicen
  Botón de donar con información de usuario Gonzalo 5 612 16-04-2014, 06:10 AM
Último mensaje: MaxHurbano
  Cambiar Header de Wordpress DelPieri 9 947 05-02-2014, 03:42 AM
Último mensaje: DarkMaster
  Tuto - Bloqueo de Ips por Pais Mediante htaccess MrLoco 15 1,453 27-03-2013, 03:13 PM
Último mensaje: Teban
  Como crear una base da datos y un usuario en CPANEL Juliens 15 2,016 05-03-2013, 04:39 PM
Último mensaje: papi
  Detectar si el usuario apretó el botón me gusta facebook torgar22 7 1,695 04-03-2013, 03:58 PM
Último mensaje: torgar22
  Mostrar Contenido de acuerdo al pais en php torgar22 2 491 22-02-2013, 04:47 PM
Último mensaje: josephsk8one
  Obtener país a través de IP PHP torgar22 0 440 14-01-2013, 05:05 PM
Último mensaje: torgar22



Usuarios navegando en este tema: 1 invitado(s)