Foros del Web » Programando para Internet » PHP »

Qué idioma debo colocar ?

Estas en el tema de Qué idioma debo colocar ? en el foro de PHP en Foros del Web. Hola mis amigos, les cuento que tengo una web en tres (3) idiomas, pero ahora no sé cómo hacer lo siguiente, quiero que si el ...
  #1 (permalink)  
Antiguo 06/11/2017, 13:26
Avatar de julia2021  
Fecha de Ingreso: diciembre-2014
Ubicación: Mexico
Mensajes: 152
Antigüedad: 10 años
Puntos: 11
Sonrisa Qué idioma debo colocar ?

Hola mis amigos, les cuento que tengo una web en tres (3) idiomas, pero ahora no sé cómo hacer lo siguiente, quiero que si el visitante es de un país que hable inglés, pues aparezca mi página en inglés (mipagina.com/en). Pero si habla Portugues que lo redireccione a mipagina.com/por y si no, que por default me lo redireccione a mi version en español mipagina.com/sp.

Pero, cómo puedo saber al pais o el idioma de adónde me visita una persona, para saber adonde direccionarlo ?

- mipagina.com/en
- mipagina.com/por
- mipagina.com/sp

Mil Gracias por la ayuda que me puedan brindar !!!
  #2 (permalink)  
Antiguo 06/11/2017, 13:50
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Qué idioma debo colocar ?

Puedes usar la variable global $_SERVER["HTTP_ACCEPT_LANGUAGE"]

Que te entrega valor de la cabecera codificado, los primeros valores, en termino práctico te entrega el lenguaje del usuario, pero como no lo entrega de forma explicita, es decir, "english" o "en", debes usar substring, algo así

Código PHP:
Ver original
  1. $leng = substr($_SERVER["HTTP_ACCEPT_LANGUAGE"],0,2);

Ergo usas condicionales o arreglos para redireccionar, para ello podrías usar

Código PHP:
Ver original
  1. header("Location: $langWeb");

Espero sirva.

P.S: no des por hecho que el usuario quiera el lenguaje definido por este método dale la opcion para poder cambiar

Etiquetas: localizacion
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:15.