Si eres webmaster de un sitio internacional o que simplemente está disponible en varios idiomas, puedes hacer como la mayorÃa: poner un enlace a las páginas en inglés, español, etc, por ejemplo, para que el usuario haga clic (si se da cuenta) y pueda acceder a la información del sitio en su idioma.
Pero sabemos que en términos de usabilidad esto no es lo óptimo, por eso nos viene de pelÃcula este script de PHP para cambiar automáticamente las páginas de nuestro sitio al idioma del usuario. ¡Ni siquiera necesitas poner un enlace de idioma!
Cambiar de página según el idioma, con PHP
Los paÃses de la lista son de ejemplo, puedes poner los que quieras.
<?php
// cambia pagina.php por el archivo correcto de acuerdo al pais
if (isset( $pais ) && ( $pais <> ” )) {
$dgo_pais = substr ( $pais , 0 , 5 );
} else {
$dgo_pais = substr ( $_SERVER [ "HTTP_ACCEPT_LANGUAGE" ], 0 , 5 );
}
switch ( $dgo_pais ) {
case “es-mx” :
//si el pais es mexico
include( “tupagina.php” );
break;
case “es-ar” :
//si el pais es argentina
include( “tupagina.php” );
break;
case “es-cl” :
//si el pais es chile
include( “tupagina.php” );
break;
case “es-ve” :
//si el pais es venezuela
include( “tupagina.php” );
break;
case “pt-br” :
//si el pais es brasil
include( “tupagina.php” );
break;
case “es-co” :
//si el pais es colombia
include( “tupagina.php” );
break;
case “es-ec” :
//si el pais es ecuador
include( “tupagina.php” );
break;
case “es-uy” :
//si el pais es uruguay
include( “tupagina.php” );
break;
default:
//si es algun otro pais
include( “tupagina.php” );
break;
}
?>
Fuente: ProgramaciónWeb








Lunes, 4 de Agosto de 2008 a las 13.54
Que buen aporte! Muchas gracias!
Lunes, 4 de Agosto de 2008 a las 16.55
hola, muy bueno el script
Sólo una cosa, este ejemplo es para cambiar la página de acuerdo al paÃs que se declaran en los “case”. Pero cómo pongo los case si lo que quiero es cambiar la página según el idioma del navegante? me refiero a si él está en EE. UU.que le aparezca la página en inglés, pero adicionalmente que tenga un botón que le permita ver el sitio en castellano ¿se omitirÃa el script al cargar una nueva página en otro idioma? saludos
Martes, 5 de Agosto de 2008 a las 16.58
¡Hola, Javier!
En efecto, el código de ejemplo cambia el “idioma” según el paÃs del visitante. Para salvar el tema del redireccionamiento puedes hacer algo muy sencillo (se me ocurre), puedes poner un enlace a una página en castellano que no tenga el script, o usar un redirect=no
.
¡saludos!
Jueves, 13 de Noviembre de 2008 a las 20.39
Mi pregunta es un poco “tonta” pero me quedé pensando… el script se incorpora en el index.php del sitio, ¿no?
Viernes, 14 de Noviembre de 2008 a las 15.44
Exacto, la idea es redirigir a otras páginas en idioma diferente, una vez que han llegado a ellas ya no es necesario llevar a los usuarios a otro sitio.
¡Saludos!
Jueves, 7 de Mayo de 2009 a las 22.05
exelente q creen esta pagina
Jueves, 7 de Mayo de 2009 a las 22.11
exacto ,la idea es redigir a otras paginas en idioma diferente ,una vez que han llegado a ellas ya no es necesario llevar a los usuarios a otro sitio
¡Saludos!
Martes, 21 de Septiembre de 2010 a las 13.54
Buen dÃa, una consulta: se puede aplicar este codigo php a un sitio realizado en html?, De poder hacerlo, como se hace? desde ya muchas gracias…
Jueves, 4 de Noviembre de 2010 a las 03.44
Hola , recien encuentro este codigo lo puse en mi web pero me da error en line 14 ?¿¿?¿
http://www.lagransubasta.com.ar/pais.php , la 14 me da justo la url de la web yo no uso ej mexico.php uso http://www.lagransubasta.com.ar/mexico /chile / colombia /brasil y asi dominio/pais
Sábado, 8 de Enero de 2011 a las 20.45
Estoy haciendo una pagina y quiero saber si existe unos codigo en HTML para que la pagina se traduzca en ingles con dar un clic
saludos a Todos
carlitostrejo@live.com