Una vez instalado y configurado qtranslate con los diferentes idiomas podemos añadir el selector que trae por defecto en la plantilla, por ejemplo dentro de header.php
qtrans_generateLanguageSelectCode('dropdown');
o añadir un selector personalizado.
<div id="selector_idiomas">
<?php if(is_404()) $url = get_option('home'); else $url = ''; ?>
<ul id="qtranslate-chooser" class="qtrans_language_chooser">
<li class="lang-ca <?php if ( $GLOBALS['q_config']['language'] == 'ca' ) echo 'active';?>">
<a title="Català" hreflang="ca" href="<?php echo qtrans_convertURL($url, 'ca')?>">
<span>ca</span>
</a>
/
</li>
<li class="lang-es <?php if ( $GLOBALS['q_config']['language'] == 'es' ) echo 'active';?>">
<a title="Castellano" hreflang="es" href="<?php echo qtrans_convertURL($url, 'es')?>">
<span>es</span>
</a>
</li>
<!--
<li class="lang-en <?php if ( $GLOBALS['q_config']['language'] == 'en' ) echo 'active';?>">
<a title="English" hreflang="en" href="<?php echo qtrans_convertURL($url, 'en')?>">
<span>en</span>
</a>
</li>
-->
</ul>
<div class="qtrans_widget_end"></div>
</div>
y los css correspondientes en style.css:
ul.qtrans_language_chooser li {
display: inline;
list-style: outside none none;
}
#selector_idiomas ul, #selector_idiomas {
display: inline;
font-size: 1.1em;
margin: 0 20px;
text-align: left;
}
li.active a {
color: black;
}
Para que qtranslate detecte los diferentes idiomas se debe colocar las siguientes etiquetas en los textarea:
<!--:es--> Texto en castellano. <!--:--> <!--:ca--> Texto en catalán. <!--:-->
Para los input text como el título lo más comodo es la alternativa.
[\:es]Texto en castellano[\:ca]Texto en catalán
Sin la barra, yo la he añadido para que no traduzca y se muestre el código.