Voy a compartir un trozo de código que he preparado, que se puede reutilizar en cualquier página web.
Pongamos que tenemos una página web en español, y queremos que gente que no sepa español pueda leerla. Si no queremos mantener una versión de la misma página para cada idioma, lo más sencillo es recurrir a las traducciones automáticas. Cometen muchos errores, pero es lo más cómodo.
En Internet he visto varios scripts html/javascript para llevar a cabo esta tarea, pero tenían 2 problemas:
El idioma origen es el inglés Los enlaces utilizan javascript, con lo que los buscadores no sabrán encontrar los textos traducidos; sólo la versión original.
A partir de varios scripts que hay disponibles "por ahí", he creado el siguiente script, que generará las banderas que traducirán del español a 10 idiomas, de un modo que Google y los demás buscadores sabrán encontrar las páginas en todos los idiomas. Lo podéis ver en funcionamiento en esta misma página, arriba a la derecha.
Para instalarlo, sólo hay que copiar en tu página web, widget de tu blog de Blogger o tu plantilla de cualquier otro gestor de contenidos, el código completo que hay a continuación, cambiando donde pone "www.nightearth.com" por la dirección de tu página web.
<!-- Script de traducción automática - http://www.dreamcoder.org Para configurarlo a tu página, reemplaza "www.nightearth.com" por la dirección de tu página --> <span id="flagsrow"></span> <script language="javascript"> <!-- function translate(langpair) { location.href = 'http://translate.google.com/translate?u='+escape(location.href)+'&hl=es&langpair='+langpair+'&tbb=1&ie='+(document.charset||document.characterSet); } function createFlag(langpair, langname, img) { return '<a href="javascript:translate(\''+langpair+'\');"><img alt="'+langname+'" width="23" src="'+img+'" height="20" />'; } document.getElementById('flagsrow').innerHTML = createFlag('es|en', 'English', 'http://1.bp.blogspot.com/_XGtsagQTuUQ/RZk8DP2JNiI/AAAAAAAAADk/eRxHS5s1f10/s320/english.jpg') + createFlag('es|de', 'German', 'http://photos1.blogger.com/img/43/1633/320/13539933_041ca1eda2.jpg') + createFlag('es|pt', 'Portuguese', 'http://photos1.blogger.com/img/43/1633/320/13539966_0d09b410b5.jpg') + createFlag('es|it', 'Italian', 'http://photos1.blogger.com/img/43/1633/320/13539953_0384ccecf9.jpg') + createFlag('es|fr', 'French', 'http://photos1.blogger.com/img/43/1633/320/13539949_e76af75976.jpg') + createFlag('es|ru', 'Russian', 'http://1.bp.blogspot.com/_XGtsagQTuUQ/RZk8RP2JNpI/AAAAAAAAAEc/Tnq_uTX3WhY/s320/russia.gif') + createFlag('es|ja', 'Japanese', 'http://photos1.blogger.com/img/43/1633/320/13539955_925e6683c8.jpg') + createFlag('es|ko', 'Korean', 'http://photos1.blogger.com/img/43/1633/320/13539958_3c3b482c95.jpg') + createFlag('es|zh-CN', 'Chinese', 'http://photos1.blogger.com/img/43/1633/320/14324441_5ca5ce3423.jpg') + createFlag('es|ar', 'Arabic', 'http://2.bp.blogspot.com/_RrObyQ3XzcY/RchSvbOWb_I/AAAAAAAAAdw/uD4e5lDsh7A/s320/arabic-flag.gif'); --> </script> <noscript> <a href="http://translate.google.com/translate?u=http%3A//www.nightearth.com&hl=es&langpair=es|en&tbb=1"><img alt="English" width="23" src="http://1.bp.blogspot.com/_XGtsagQTuUQ/RZk8DP2JNiI/AAAAAAAAADk/eRxHS5s1f10/s320/english.jpg" height="20"/></a><a href="http://translate.google.com/translate?u=http%3A//www.nightearth.com&hl=es&langpair=es|de&tbb=1"><img alt="German" width="23" src="http://photos1.blogger.com/img/43/1633/320/13539933_041ca1eda2.jpg" height="20"/></a><a href="http://translate.google.com/translate?u=http%3A//www.nightearth.com&hl=es&langpair=es|pt&tbb=1"><img alt="Portuguese" width="23" src="http://photos1.blogger.com/img/43/1633/320/13539966_0d09b410b5.jpg" height="20"/></a><a href="http://translate.google.com/translate?u=http%3A//www.nightearth.com&hl=es&langpair=es|it&tbb=1"><img alt="Italian" width="23" src="http://photos1.blogger.com/img/43/1633/320/13539953_0384ccecf9.jpg" height="20"/></a><a href="http://translate.google.com/translate?u=http%3A//www.nightearth.com&hl=es&langpair=es|fr&tbb=1"><img alt="French" width="23" src="http://photos1.blogger.com/img/43/1633/320/13539949_e76af75976.jpg" height="20"/></a><a href="http://translate.google.com/translate?u=http%3A//www.nightearth.com&hl=es&langpair=es|ru&tbb=1"><img alt="Russian" width="23" src="http://1.bp.blogspot.com/_XGtsagQTuUQ/RZk8RP2JNpI/AAAAAAAAAEc/Tnq_uTX3WhY/s320/russia.gif" height="20"/></a><a href="http://translate.google.com/translate?u=http%3A//www.nightearth.com&hl=es&langpair=es|ja&tbb=1"><img alt="Japanese" width="23" src="http://photos1.blogger.com/img/43/1633/320/13539955_925e6683c8.jpg" height="20"/></a><a href="http://translate.google.com/translate?u=http%3A//www.nightearth.com&hl=es&langpair=es|ko&tbb=1"><img alt="Korean" width="23" src="http://photos1.blogger.com/img/43/1633/320/13539958_3c3b482c95.jpg" height="20"/></a><a href="http://translate.google.com/translate?u=http%3A//www.nightearth.com&hl=es&langpair=es|zh-CN&tbb=1"><img alt="Chinese" width="23" src="http://photos1.blogger.com/img/43/1633/320/14324441_5ca5ce3423.jpg" height="20"/></a><a href="http://translate.google.com/translate?u=http%3A//www.nightearth.com&hl=es&langpair=es|ar&tbb=1"><img alt="Arabic" width="23" src="http://2.bp.blogspot.com/_RrObyQ3XzcY/RchSvbOWb_I/AAAAAAAAAdw/uD4e5lDsh7A/s320/arabic-flag.gif" height="20"/></a><a href="http://www.dreamcoder.org">?</a> </noscript> <!-- Fin del Script de traducción automática -->
Este script proporciona 2 versiones de las banderitas: una con javascript, que traduce la página actual, sea cual sea, y una en html, que traduce la página principal, desde la que se puede navegar a las otras páginas.
2 comentarios:
me gustaria que la pagina traducida se de en la misma pagina... no en otra y sin esa barra de google traslator.
gracias
Eres un maestro, justo buscaba esto gracias; pero tengo una duda ¿Cómo es que el motor de busqueda de google indexa la página traducida?
Publicar un comentario