Foros Programación Cliente
Web en dos idiomas
9 9 Respuestas Martes 14 de octubre, 2008
Hola!
Tengo una página web que en root (directorio principal) tiene 2 carpetas: "esp" y "eng". En cada una de ellas está la misma página, en la carpeta "esp" está en idioma español y en "eng" esta traducida al inglés.
Lo que quiero es que cuando uno entre a la dirección:
www.tipotype.com (todavía no esta subida) vaya directamente a: www.tipotype.com/esp/index.html
Sin tener que redirecciónar, para que no demore tanto en cargar.
Gracias!
Fercho
PD: Por si quieren ver un adelanto de la página:
TipoType
Se aceptan críticas constructivas :)
Tengo una página web que en root (directorio principal) tiene 2 carpetas: "esp" y "eng". En cada una de ellas está la misma página, en la carpeta "esp" está en idioma español y en "eng" esta traducida al inglés.
Lo que quiero es que cuando uno entre a la dirección:
www.tipotype.com (todavía no esta subida) vaya directamente a: www.tipotype.com/esp/index.html
Sin tener que redirecciónar, para que no demore tanto en cargar.
Gracias!
Fercho
PD: Por si quieren ver un adelanto de la página:
TipoType
Se aceptan críticas constructivas :)
-
kemie
Registrado desde 06/04/04 / Número de posts: 673
uy, se ve linda!
si redireccionas con htaccess no deberia de demorar mucho, no? -
Fercho
Registrado desde 14/10/08 / Número de posts: 17
Gracias!
Lo probaré, es que antes la estaba redireccionando con el siguiente código:
META HTTP-EQUIV=REFRESH CONTENT="0; URL=http://www.tipotype.com/prueba/esp/index.html"
y demoraba unos segundos...
Saludos -
cbp
Registrado desde 18/11/03 / Número de posts: 4007
¿en función de qué criterio envías al usuario a la versión en castellano o en inglés? -
markshock
Registrado desde 21/03/05 / Número de posts: 780
Como dice cbp, que criterio usas.. por que lo suyo sería capturar la config de idioma del usuario y a partir de ahí hacerle la redirección, o sencillamente todos van de entrada a ESP...?Desarrollo web, servicios integrales en internet
Work: http://www.estadoactivo.com
Yo: http://www.marctorres.es
Blog: http://www.marc-torres.com -
Fercho
Registrado desde 14/10/08 / Número de posts: 17
Yo había pensado que de primera vaya a la página de español,
si el usuario habla inglés que luego cambie el idioma.
Gracias -
cbp
Registrado desde 18/11/03 / Número de posts: 4007
creo que lo mejor es detectar qué idioma es el preferido según los que tenga definidos en el navegador, y en función de eso redirigir a la versión correspondiente. el código PHP, que iría en el index.php, es este:
$idiomas = explode(",",strtolower( $_SERVER["HTTP_ACCEPT_LANGUAGE"] ));
$numeroIdiomas = count($idiomas);
for ($i=0;$i<$numeroIdiomas;$i++) {
$idiomaUsuario = substr($idiomas[$i],0,2);
switch ($idiomaUsuario) {
// comprobamos si el navegador está en castellano
case "es":
$idioma = 'esp';
$i = $numeroIdiomas;
break;
// comprobamos si el navegador está en inglés
case "en":
$idioma = 'eng';
$i = $numeroIdiomas;
break;
default:
$idioma = 'esp';
break;
}
}
/* redirigimos en función del idioma asignado */
header("location:/prueba/".$idioma."/index.html");
p.d.: perdón por el sangrado, en la edición sale bien pero no en la visualización -
Fercho
Registrado desde 14/10/08 / Número de posts: 17
Muchas gracias :D
Cuando esté online la publico para que la vean. -
Fercho
Registrado desde 14/10/08 / Número de posts: 17
Funciona bárbaro... para la gente que quiera hacer esto, les muestro como quedó mi Index.php final:
* Nota hay que poner este código entre paréntesis recto: script language="php" y cierra con: /script
$idiomas = explode(",",strtolower( $_SERVER["HTTP_ACCEPT_LANGUAGE"] ));
$numeroIdiomas = count($idiomas);
for ($i=0;$i<$numeroIdiomas;$i++) {
$idiomaUsuario = substr($idiomas[$i],0,2);
switch ($idiomaUsuario) {
// comprobamos si el navegador está en castellano
case "es":
$idioma = 'esp';
$i = $numeroIdiomas;
break;
// comprobamos si el navegador está en inglés
case "en":
$idioma = 'eng';
$i = $numeroIdiomas;
break;
// por defecto dejamos el idioma castellano
default:
$idioma = 'esp';
break;
}
}
/* redirigimos en función del idioma asignado */
header("location:/prueba/".$idioma."/index.html"); -
eRNieB
Registrado desde 10/08/06 / Número de posts: 920
Fercho, pinta bien este proyecto. Ya avisaras cuando este on-line.
¡AH! Ya de paso, gracias por la solución aportada cbp (y posteriormente fercho): va directo a favoritos, porque nunca sabes cuando vas a tener que tirar de una solución de este tipo, y creo que es el mejor planteamiento para una web en varios idiomas.
Áreas Domestika
- Diseño (gráfico, web, industrial, producto)
- Programación (cliente, servidor, accesibilidad)
- Ilustración (autores, inspiración, técnicas)
- Fotografía (técnica, equipo, autores)
- Motion Graphics (showreels, software, estudios)
- Publicidad (campañas, anuncios, ideas)
- Informática (software, hardware, trucos)
- 3D (técnicas, iluminación, modelado)
- Experiencia de Usuario (usabilidad, AI, HCI)
- Cine, vídeo y televisión (críticas, producción)
- Música y Audio (sonidos, loops, discos)
- Espacios (arquitectura, interiorismo)