Añadir portlet de Idioma en Liferay

por

Nuevamente os traigo la forma de incluir otro nuevo tipo de portlet en vuestros temas de apariencia de Liferay.

En este caso, le ha tocado en turno al portlet de idiomas. Uno de los mejores portlets que nos puede aportar Liferay, nos permite internacionalizar nuestras páginas de una forma rápida y sencilla.

Este porlet nos permite cambiar el idioma de nuestro portal, tanto su contenido como sus paneles de control y demás herramientas que nos ofrece.

Para añadirlo, como en ocasiones anteriores con otros portlets, basa con escribir las siguientes líneas en vuestro portlat-normal.vm:

$velocityPortletPreferences.setValue("portlet-setup-show-borders", 
"false")

Como siempre, no dejamos que muestre los bordes del portlet.

$velocityPortletPreferences.setValue(" language-ids", "es_ES,en_US")

Establecemos que idiomas queremos que aparezcan en nuestro portlet. En este caso tenemos puesto español e ingles pero podrían ser infinidad de ellos. Los más destacados son los siguientes: en_US ->Inglés(Estados Unidos), ca_ES ->Catalán(España), de_DE ->Alemán, fr_FR ->Francés, it_IT ->Italiano, pt_PT ->Portugues(Portugal)

$velocityPortletPreferences.setValue("display-style", "2")

Establecemos el estilo con que se muestran los idiomas. Las posibilidades son 3: 1 -> Texto Largo, 2 -> Texto Corto, 3 -> Campo de Selección

$theme.runtime("82", "", $velocityPortletPreferences.toString())

Lanzamos el portlet, en este caso es el 82(ID correspondiente al portlet de idioma). Podríamos también darle una instancia.

$velocityPortletPreferences.reset()

Por último reseteamos las preferencias.

Finalmente os pongo el código completo para que podais incluirlo directamente:

$velocityPortletPreferences.setValue("portlet-setup-show-borders", "false")
$velocityPortletPreferences.setValue(" language-ids", "es_ES,en_US")
$velocityPortletPreferences.setValue("display-style", "2")
$theme.runtime("82", "", $velocityPortletPreferences.toString())
$velocityPortletPreferences.reset()

Espero que os haya servido.

COMENTARIOS

09-01-2014 19:20:51
Hola Francisco, siento decirte que no he tenido la oportunidad de probar estos código todavía para la versión 6.2 asi que no te puedo decir si funcionan o no pero supongo que deberían funcionar. Solo te lo puedo asegurar para la versión 6.X.
09-01-2014 16:48:39
Buenas Sergio, sabes si esa configuración funciona para la versión 6.2 Gracias.
29-04-2013 19:50:37
Gracias por el aporte Sergio, me estaba volviendo loco con el cambio de versión a la 6.1.1
30-07-2012 20:03:44
Si, en Liferay 6.1 han cambiado los nombres de las declaraciones algo. Para nuestro caso sería: $velocityPortletPreferences.setValue("portletSetupShowBorders", "false") $velocityPortletPreferences.setValue(" languageIds", "es_ES,en_US")
$velocityPortletPreferences.setValue("displayStyle", "2")
$theme.runtime("82", "", $velocityPortletPreferences.toString())
$velocityPortletPreferences.reset()
Si te fijas, lo que hay que hacer es eliminar los guiones y poner la primera letra de cada palabra de mayúscula excepto la primera y todo junto. Pruébalo y me dices
24-07-2012 13:37:23
He utilizado el código que aparece aquí pero no funciona para liferay 6.1. Muestra el portlet pero no la configuración que le dices en el código... ¿Alguna sugerencia?
02-07-2012 23:51:46
Esta dentro del tema de apariencia(carpeta _diffs/templates/). Puedes ver como se crea uno nuevo en el siguiente enlace http://sergioglez.webcindario.com/cargarArticulo.php?id=10
28-06-2012 22:54:09
Excelente, es lo que estoy buscando, podrias explicarme cual es ese archivo portlat-normal.vm al que te refieres o en que parte de tus tutos tienes como crearlo o sacarlo, gracias me ayudarias increiblemente.
30-12-2011 14:18:11
Gracias por el post, muy claro y útil. Me ha sido de gran ayuda. Gaacias
30-08-2011 16:07:22
Muchas gracias. Muy útil y muy claro explicado cómo añadir este portlet. Un saludo.

DEJA TU COMENTARIO