Go to main content

Textpattern CMS support forum

You are not logged in. Register | Login | Help

#1 2012-05-21 05:49:36

gfdesign
Member
From: Argentina
Registered: 2009-04-20
Posts: 401

[es-es] Método alternativo para un sitio multidioma

Como todos sabrán, a la hora de hacer un sitio multidioma en TXP, la primera opción que pensamos es MLP, ó bien crear secciones por idioma tal como sugirió Juanjo en este post

No se si en los foros habrá más alternativas para un sitio multidioma, pero desde que retomé a investigar sobre este tema hace unos días, creo que se me ocurré una opción más sin recurrir a MLP.

Para ello necesitaremos los plugins:
chs_cookie ó
glz_custom_fields
bot_write_tab_customize

La idea es la siguiente:
Con el plugin glz_custom_fields creamos 3 nuevos campos personalizados o custom fields por cada idioma que queremos agregar. Un textinput para el título, un Textarea para el resúmen y un Textarea para el cuerpo. Con el plugin bot_write_tab_customize podemos acomodar estos campos donde crean conveniente para facilitar la interfaz del usuario.

Con chs_cookie podemos crear una cookie que almacenará el idioma que el usuario seleccione a través de una función. Además, este plugin trae una etiqueta condicional que nos servirá para determinar el valor de la cookie que nos indicará el idioma seleccionado para mostrar los textos de un idioma o de otro.

Sé que no es del todo perfecto y tampoco descubrí la pólvora, pero para la administración del usuario final puede resultar más simple y amigable ya que sólo se necesita dar de alta un articulo para todos los idiomas.

La ventaja que le encuentro a este método es que sólo se necesita asociar una imagen para un sólo articulo que contendrá todas las traducciones. Otra ventaja es que puede resultar útil en una sección ‘Libro de visitas’ de un sitio multidioma ya que podemos mostrar en un solo artículo varios idiomas pero con todos los comentarios unificados. Algo que comenté en mi anterior post

Esa básicamente es la teoría (aun no llevada a la práctica)
Entonces ¿que opinan de este método? ¿es viable o dije cualquiera?
Saludos

Offline

#2 2012-05-21 14:00:56

maniqui
Member
From: Buenos Aires, Argentina
Registered: 2004-10-10
Posts: 3,070
Website

Re: [es-es] Método alternativo para un sitio multidioma

La idea es interesante y te exhorto a que la explores :)

Una desventaja que le veo, y que no es para nada menor, es que una misma URL muestra distintos contenidos (mejor dicho: el mismo contenido en distintos idiomas).
A priori, esto es “malo”, desde un punto de vista de SEO/SEM y, por qué no, de usabilidad también.

Dicho esto, tal vez puedas agregar a gbp_permanent_links al cocktail de plugins e investigar por el lado de usar URLs que sean así:
/lang/section/id. Ej: /es/productos/1.
Mejor aún sería si podés lograr que las URLs sean así: /lang/section/id/url-title. Ej: /es/productos/1/mi-super-producto. Tal vez la parte más díficil sea tener un url-title por cada idioma.

Dicho esto, lo que proponés está bien pensado, y puede andar, y si no te preocupa (aunque un poco debería…) el problema de “distintos contenidos en misma URL”, dale para adelante…


La música ideas portará y siempre continuará

TXP Builders – finely-crafted code, design and txp

Offline

#3 2012-05-22 18:38:23

gfdesign
Member
From: Argentina
Registered: 2009-04-20
Posts: 401

Re: [es-es] Método alternativo para un sitio multidioma

Hola Maniqui, gracias por las sugerencias.

Si, soy consciente el tema de las URL y otras cosas más, pero pienso que este sitio puede servir para cuando los requerimientos no son tan exigentes.

Te comento que tropiezo al usar <txp:if_variable>, ya que al momento de guardar el valor de la cookie del idioma en una variable Txp, se guarda TODO el código Javascript en lugar de guardarse su valor.

Ejemplo.
Codigo TXP:
<h2><txp:variable name="idioma" /></h2>

Salida HTML:
<h2><script type='text/javascript'>document.write (getCookie('idioma'));</script></h2>

cuando debería ser:
<h2>es</h2>

Por lo tanto nunca se cumple esta condición:

<txp:if_variable name="idioma" value="es">
<p>Contenido en español</p>
<txp:else />
<p>Contenido en inglés</p>
</txp:if_variable>

Aclaro que la salida de la cookie se muestra correctamente en pantalla: es
Alguna idea como poder solucionarlo?
Gracias

Last edited by gfdesign (2012-05-22 19:03:29)

Offline

Board footer

Powered by FluxBB