Manuales Joomla
Fotografía del juego scramble formando la palabra quiet

Domina las modificaciones de idioma en Joomla!

(Lo puedes leer en: 2 - 4 minutos)

por .

Una de las cosas más chulas de Joomla! es poder modificar fácilmente todo lo que el usuario ve con la técnica de Overrides o "Modificaciones". Y entre las muchas cosas que podemos modificar en nuestro sitio, gracias a las modificaciones de idioma también podemos cambiar los textos que mostramos a nuestros usuarios.

¿Quieres saber qué son las modificaciones de idioma?

Las modificaciones de idioma son una forma muy sencilla de cambiar los textos de Joomla! y de sus extensiones. Básicamente en Joomla! todos los textos que se muestran están definidos en ficheros de idioma independientes y separados por párrafos, frases o cadenas específicas. Así, podemos cambiar una frase concreta de nuestro sitio sin tener que editar todos los ficheros o sin necesidad de tener que toquetear el código del programa.

¿Cómo se hace una modificación de idioma?

Para poder añadir modificaciones de idioma a tu sitio Joomla tienes que acceder al backend, y en el menú superior, en el apartado de extensiones busca el apartado de Idiomas.

Una vez allí, ya puedes crear tus modificaciones pinchando en Nuevo. Si necesitas un poco más de ayuda sobre cómo crear tus modficaciones de idioma, tienes más detalles de uso en el apartado de modificaciones de idioma de la documentación oficial.

Las cadenas de texto de estos ficheros de idioma en Joomla son muy potentes, tanto que permiten incluso pasar textos variables de forma que por ejemplo para saludar al usuario en un email, se suele incluir el nombre del mismo; pues bien, en nuestra cadena de texto pondremos un %s donde queramos que aparezca el nombre de usuario y Joomla! automáticamente lo reemplazar por el valor correcto. Por ejemplo:

¡Hola %s!

Y el resultado será:

¡Hola Carlos!

Por si esto fuera poco, hay cadenas que reciben varios textos y que podremos incluir del mismo modo usando un %s donde queramos incluirlos y la inclusión de los mismos se hará por orden. Veamos un ejemplo con los mensajes de nueva cuenta de usuario y cómo podemos sacarle el máximo partido.

Cambiando el mensaje de nueva cuenta de usuario

Cuando nuestros usuarios se registran en Joomla! en muchas ocasiones se le envía un email con los datos del registro: el nombre del sitio, su nombre de usuario e incluso la contraseña. El texto de este email por defecto es:

Hola Carlos,

Gracias por registrarse en Manuales Joomla.

Ahora ya puede acceder a http://demo.manualesjoomla.es usando el siguiente nombre de usuario y contraseña:

Usuario: carlos

Contraseña: unacontraseñamuydificil

Todas las palabras que he resaltado en negrita son en realidad variables que recibe la cadena de idioma. Pero ¿Qué pasa si queremos ahorrarnos enviarles el nombre de usuario o el nombre del sitio en el email? Según lo que hemos contado antes, lo tendríamos complicado porque los parámetros aparecen en orden:

  1. Nombre real del usuario
  2. Nombre del sitio web
  3. URL del sitio web
  4. Nombre de usuario (nick o apodo)
  5. Contraseña

No obstante, Joomla! nos permite decidir qué parámetro queremos usar en cada momento, simplemente indicando el orden original del parámetro.

Así, a la hora de hacer el override, reemplazaremos el comodín %s por %N$s, donde la N debe ser un número que refleje el orden en que aparecía el parámetro en el texto original. Por ejemplo:

Cadena de texto

%1$s, gracias por registrarte en %2$s con el nombre de usuario %4$s.

Ahora ya puede acceder al sitio usando tu nombre de usuario y la contraseña que elegiste.

Resultado

Carlos, gracias por registrarte en Manuales Joomla con el nombre de usuario carlos.

Ahora ya puede acceder al sitio usando tu nombre de usuario y la contraseña que elegiste.

Si te atreves con más...

Si tienes curiosidad por saber cómo se gestiona esto o conocer opciones más avanzadas de la sustitución de parámetros de las cadenas de idioma, puedes revisar los parámetros de la función sprintf de PHP.

Etiquetas: Personalización del sitio, Modificaciones de idioma, Idiomas, Overrides, Trucos

Imprimir