sábado, 21 de enero de 2012

Como traducir tus posts


he estado buscando la manera de traducir los post de blogspot, donde tengo alojado este blog,  pero no he encontrado nada. Así que me he puesto manos a la obra y he escrito un poco de javascript para añadir esta funcionalidad a mi blog. La idea es muy sencilla, el post contiene ambos textos, en inglés y en español, y mediante jQuery muestro uno u otro. También leo el parametro lang de la url para determinar en que idioma se debe mostrar el post para poder crear links en el idioma deseado.


<title>
<span class="es">titulo en español</span>
<span class="en">English title</span>
</title>
<div class="es">
<a href="#" onclick="translate();">translate</a>
</div>
<div class="en">
<a href="#" onclick="translate();">traducir</a>
</div>
<div class="es">
html en español
</div>
<div class="en">
English's html
</div>
<div style="display:none">
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(init);
function init() {
language = getParameterByName("lang");
switch (language)
{
case "en":
$(".en").show();
$(".es").hide();
break;
default:
$(".es").show();
$(".en").hide();
break;
};
};
function translate(){
$(".es").toggle();
$(".en").toggle();
};
function getParameterByName(name)
{
name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
var regexS = "[\\?&]" + name + "=([^&#]*)";
var regex = new RegExp(regexS);
var results = regex.exec(window.location.href);
if(results == null)
return "";
else
return decodeURIComponent(results[1].replace(/\+/g, " "));
};
</script>
</div>
view raw translate.html hosted with ❤ by GitHub



Lo peor de todo es que ahora voy a tener que traducir los posts :(




No hay comentarios:

Publicar un comentario