Página 1 de 11
Moderador del foro: ZorG 
Foro uCoz » Módulos de uCoz » Control de la cuenta de registro » Pagina web bilingüe (¿Es posible? ¡Sí, es posible!)
Pagina web bilingüe
GUARAGUAO
Mensajes: 2362
Reputación: 81
Mensaje Nº 1 | 1:51 PM
Pagina web bilingüe

Este tema lo quiero dedicar en primer lugar a los usuarios que saben mucho de la programación en general y el sistema en particular. Pero cada cual puede encontrar algo interesante para si.

A veces vienen preguntas cómo se puede crear un sitio bilingüe. Para los hispanohablantes es un sitio web creado en Castellano e Inglés. Generalmente los interesados son latinos.

Pero antes de empezar a leer el tema, les invito a que se pongan a pensar: ¿Realmente necesitan un sitio bilingüe? ¿Para qué lo necesitan? Lo pido porque crear un sitio de esta índole es una tarea muy complicada y los esfuerzos pueden estar aplicados para otros fines, más concretos y cercanos. Es que primero hay que definir los casos cuando de verdad se necesitan los sitios en varios idiomas. Podemos dar un ejemplo al azar:

1. Sitios – tarjetas de las compañías que cooperan con los socios extranjeros;
2. Sitio que prestan servicios que son necesarios en mercados exteriores (ejemplo: sitio de una agencia de traducciones);
3. Tiendas online con la entrega en el extranjero o los productos electrónicos que pueden representar cierto interés para los compradores extranjeros.
4. Sitio destinado para un público multilingüe (un ejemplo clásico es Israel que tiene 3 idiomas oficiales).

Supongamos que tu sitio pertenece a uno de los 4 tipos mencionados y tú realmente requieres una web en varios idiomas. Según la complejidad de la tarea su realización en los límites del sistema uCoz puede tener varios niveles de complicación.

La variante más simple es cuando el sitio es estático (una especie de la tarjeta de visita) – la solución más eficaz será doblar todas las páginas en otro idioma con ayuda de Editor de páginas. Como ejemplo podemos presenta la barra de herramientas de uCoz:

1. http://utoolbar.ucoz.net/index/english/0-7
2. http://utoolbar.ucoz.net/

En caso de que hay más de 2 idiomas, sería correcto ubicar los sitios en las carpetas llamadas conforme a estos idiomas:

1. sitio.ucoz.com/es
2. sitio.ucoz.com/en
3. sitio.ucoz.com/de

Esto no es obligatorio, pero es bueno y cómodo para la percepción y lógica interior.

Para los proyectos más complicados que se componen no sólo de las páginas estáticas, sino también de los módulos, la variante más óptima será la creación de un sitio bilingüe/trilingüe/cuatri... smile :

1. Creamos una web en el primer idioma. Digamos, en Español: sitio1.ucoz.com;
2. Simultáneamente se crea otra web (en Inglés) – sitio2.ucoz.com;
3. Hacemos las mismas configuraciones, el mismo diseño. Pero con una excepción: para el sitio1 en el Panel de Control elegimos Español, para el sitio2Inglés.
4. Para unir los sitios, a un sitio se aparca un dominio. Ej.: al sitio1.ucoz.com se aparca el dominio dominio1.com. Después en el Panel de Control de dominios se crea un sub-dominio en.dominio1.com. Ahora para los visitantes es un solo sitio pues están unidos con el sub-dominio común. Además, el prefijo en es bien comprensible y se percibe perfecto para la localización lingüística del sitio.
5. Paso siguiente – instalar un cambio de idiomas

o Español / Inglés

con los enlaces correspondientes a los sitio.

El cambio puede ser absoluto o relativo:

1. Cuando es absoluto, el enlace es una clara dirección a la página de inicio:

Quote
<a href=http://dominio1.ru>Español</a>/<a href= http://en.dominio1.ru >Inglés</a>

2. Cuando el enlace es relativo, habrá una posibilidad de realizar una interesante cosita técnica. Podrás enviar al usuario no a la página principal de la localización lingüística, sino al análogo Inglés de la página actual. O sea, si el usuario está en la página de contacto, por el enlace viene a esta misma página pero en Inglés ya. Este enlace será más o menos así:

Quote
<a href= http://dominio1.com/<?substr ($ENTRY_URL$,M+3,N)?> >Español</a>/<a href= http://en.dominio1.com/<?substr ($ENTRY_URL$,M,N)?>>Inglés</a>

En esta construcción se utiliza una función de sistema <?substr($ENTRY_URL$,M,N)?> que corta una parte de la línea a partir de la posición mencionada. Invito un simple ejemplo: <?substr('Guaraguao', 1, 2)?>. La realización de esta función será la línea “ua”. M=1 – de esta posición empieza a cortar (se calcula desde el cero, o sea, 0 es “G”, 1 es “u” etc.) N=2 quiere decir cuántos caracteres hace falta exponer.

Así mismo se utiliza el código de sistema $ENTRY_URL$ que contiene URL de la página actual. Durante su utilización real en vez de M inscribimos el largo de nuestro dominio (lo tomamos todito, junto con http:// y / en el fin, en vez de N escribimos un largo cuanto más grande, digamos 70.

Ahora veamos cómo esto se expone en realidad. Si nuestro dominio es http://dfhs.com, con el dominio Inglés http://en.dfhs.com. Entonces los enlaces relativos serán así:

Quote
<a href= http://dfhs.com/<?substr ($ENTRY_URL$,18,70)?> >Español</a>/<a href= http://en.dfhs.com/<?substr ($ENTRY_URL$,15,70) ?>>Inglés</a>

Aquí surge una pregunta: ¿Por qué en primer caso tenemos 18 y en el segundo sólo 15? Explico: el largo del sub-dominio con “en” es largo a 3 caracteres y respectivamente es necesario cortar más.

Claro está que con tal concepto es menester gestionar 2 sitios completamente de manera igual y por si acaso configurar la página 404 más o menos así: “Material que ha solicitado no está disponible en este idioma”.

Además de los sub-dominios existe una variante con los dominios nacionales tales como: dominio.ae, dominio.de, dominio.ua etc. Cómo vas a crear tu sitio: con ayuda de los sub-dominios o zonas nacionales – eso depende de tu gusto, fantasía y habilidad.

Bueno, ¿qué obtenemos en resultado de tal enfoque? Para el usuario es un sitio bilingüe, para el administrador – dos sitios independientes. En realidad es más cómodo que tener un sitio web donde simplemente se cambian las inscripciones de servicio.

En la mayoría de los casos, cuando realmente hay una necesidad de contactar el auditorio multilingüe, la información ha de ser diferente. Invito un ejemplo: los venezolanos han de estar enviados a Bogotá, palacio “Miraflores”; los chilenos a Santiago de Chile, “La Moneda”; los yanquis tendrán confianza en “Washington, Casa Blanca, Despacho Oval” etc.

Para los sitios en Alemán es obligatorio el enlace a tal sección como “Impressum”, mientras que en Español no hay tal necesidad.

En lo que toca al diseño, habrás visto que hasta los sitios de las compañías muy grandes tienen un diseño individual para diferentes países tratando de “fingirse” de los de allá. Eso está relacionado que Internet en diferentes países se ve de modo distinto. Por ejemplo, a los sitios en Inglés les gusta cantar (muy a menudo es imposible quitar música), los en Español brillan y chispear con colores “salvajes”, los sitios árabes e israelíes están configurados para su escritura de derecha a izquierda, el Internet Japonés parece más a una tabla de anuncios “De mano a mano” pues es muy cuadrado y tiene fuentes ínfimas. Si quieres crear una web seria, lo tienes tomar en consideración, estudiar y aplicar para no repulsar al cliente. Pero estas son más las cuestiones de la localización lingüística correcta que de la realización técnica.

Así mismo la independencia de los sitios permite asegurar más dinámica al sitio – no es necesario esperar las copias de un artículo en todos los idiomas, se puede publicar las existentes ya y más tarde agregar el resto.

Tal principio te permitirá economizar el tiempo, además las ventajas de tal separaciones son bien evidentes.

Pero si tienes un material escrito en dos idiomas – los comentarios no han de estar mezclados pues de lo contrario habrá un gran embrollo.

Determinando el idioma del navegador, con ayuda de los scripts se puede redirigir al usuario a la versión conveniente de la web. Por ejemplo, este script va a cambiar los idiomas de la página de inicio:

Quote
1. var myLngHost = 'site1.com'; //aquí escribimos el nombre del sitio sin www.
2. var myDefSubDomain = ''; // www or empty – si el sitio funciona como www.sitio1.com, escribimos www, de lo contrario está vacío.
3. var myLngDef = 'com'; //determinamos qué sitio se sube si, supongamos, el idioma del navegador es Japonés, o sea, el idioma por defecto para el dominio no descrito.
4. var myLngArray = {
5. 'es': myDefSubDomain,
6. 'ar': myDefSubDomain,
7. 'mx': myDefSubDomain,
8. 'de': 'de',
9. 'fr': 'fr',
10. 'cl': 'cl',
11. 'en': 'en'
12. }; // configuraciones: qué y a dónde redirigir. En nuestro caso Español/Argentino/Mexicano al sitio principal. 'de':'de','fr':'fr','cl':'cl' – es si hay más subdominios
13. var myLngSite = myGetCookie('myLngSite');
14. if (!myLngSite && location.pathname == '/') {
15. myCheckLng();
16. }
17. function myCheckLng() {
18. var myLngBrowser = (navigator && navigator.language) ? navigator.language.replace(/(\w{2})(.*)/, '$1') : myLngDef;
19. var myLngSubDomain = myLngArray[myLngBrowser] || myLngArray[myLngDef];
20. var myLngNeedDomain = (myLngSubDomain ? myLngSubDomain + '.': '') + myLngHost;
21. mySetCookie('myLngSite', 'init', 30);
22. if (location.hostname != myLngNeedDomain) {
23. window.location = 'http://' + myLngNeedDomain;
24. }
25.
26. }
27. function mySetCookie(name, value, expdays) {
28. var today = new Date();
29. var exdate = new Date();
30. exdate.setDate(exdate.getDate() + expdays);
31.
32. document.cookie = name + "=" + escape(value) + (expdays ? "; expires=" + exdate.toUTCString() : "") + ";path=/;domain=" + location.hostname;
33. }
34. function myGetCookie(name) {
35. var prefix = name + "="
36. var cookieStartIndex = document.cookie.indexOf(prefix)
37. if (cookieStartIndex == -1) return null
38. var cookieEndIndex = document.cookie.indexOf(";", cookieStartIndex + prefix.length)
39. if (cookieEndIndex == -1) cookieEndIndex = document.cookie.length
40. return unescape(document.cookie.substring(cookieStartIndex + prefix.length, cookieEndIndex))
41. }

Naturalmente el script se pone entre los tags <head></head>.


Las vírgenes tienen muchas navidades pero ninguna Nochebuena.
bryanz
Mensajes: 3
Reputación: 0
Mensaje Nº 2 | 5:46 PM
muy bueno xD..

----------------------------------------------------------------------------------------------------------------------------------
T engo unas preguntas ¿?.

Disculpa ante todo pero necesito repuestas urgentes..!

Mira no aun no puedo aser nuevos temas xD
x eso te lo pregunto tu k estas entre los administradores..

1ºComo ago para k me den mas espacio..si solo kiero pagar via msj..?..(bueno via msj xk no tengo targeta de credito
(menor de edad (14))).
2ºK debo acer para acer un tema nuevo..?

Gracias x tu tiempo..!
Espero k me komprendas xD..!

k4non114
Mensajes: 83
Reputación: 7
Mensaje Nº 3 | 1:35 AM
o genial este tuto, Gracias por tu aporte! :).

Si puedes cheka este tuto :) http://foro.ucoz.es/forum/8-809-1
Luis
Mensajes: 42
Reputación: 2
Mensaje Nº 4 | 0:01 AM
no entendi, es decir, tendre que escribir de todas formas los materiales en los dos idiomas distintos?
no existe algun js que permita traducir el sitio segun la IP del usuario??? wacko

leohbep
Mensajes: 88
Reputación: 3
Mensaje Nº 5 | 9:50 PM
Quote (Luis)
no entendi, es decir, tendre que escribir de todas formas los materiales en los dos idiomas distintos?
no existe algun js que permita traducir el sitio segun la IP del usuario??? wacko

ajajajja estas fantaseando mucho :P


www.BEPfanclub.com
juancsb
Mensajes: 10
Reputación: 0
Mensaje Nº 6 | 3:04 AM
hahahh esta exelente...lo usare para cuando internacionalize mi sitio, por ahora estudiare la cultura inglesa sad

ehhhm no hay problema con los navegadores q bloquean los scripts?


Visiten:
http://www.mipais.com.co - miPais.com.co - ¡Reencuéntrate con Colombia!
http://www.creacion.com.co - Creación Designs - ¡Créa, explora!
4Life
Mensajes: 9
Reputación: 0
Mensaje Nº 7 | 7:32 PM
Hola chicos acabo de comparar una plantilla pero está en ingles abra alguna forma de cambiarle el idioma??
josemanuel3800
Mensajes: 389
Reputación: 10
Mensaje Nº 8 | 9:27 PM
4Life, tienes que modificar la plantilla html, ahí salen todas las palabras que lleva tu web
Si lo intentas, puedes perder; si no lo intentas, ya has perdido.
4Life
Mensajes: 9
Reputación: 0
Mensaje Nº 9 | 8:29 AM
Muchas gracias; josemanuel3800...
Foro uCoz » Módulos de uCoz » Control de la cuenta de registro » Pagina web bilingüe (¿Es posible? ¡Sí, es posible!)
Página 1 de 11
Búscar: