Embeber un portlet dentro de un theme en Liferay
De Dos Ideas.
Para embeber un portlet dentro de un theme, se hace a través del siguiente código dentro del portal_normal.vm:
$theme.runtime("idDeLaInstanciaDelportlet", "", "opcionesParaElPortlet")
para el id de la instancia del portlet hay dos opciones:
- Si el portlet no es instanciable: es el id de portlet de liferay. Los ids se encuentran en la siguiente página: ids de portlets de liferay
- Si el portlet es instanciable: además del id del portlet hay que agregar "_INSTANCE_" y además un alfanumérico que lo identifique. Por ejemplo para el portlet de idioma quedaría: "82_INSTANCE_idiomaEnConnectis"
para las opciones del portlet se pueden ir agregando de a una:
$velocityPortletPreferences.setValue("portletSetupShowBorders", "false") $velocityPortletPreferences.setValue("displayStyle", "1")
luego pedirlas todas juntas:
$velocityPortletPreferences.toString()
y por último borrar las preferencias agregadas para que se pueda seguir utilizando la variable:
$velocityPortletPreferences.reset()
En el caso de querer agregar el portlet de idioma, el código completo quedaría de la suiente forma:
$velocityPortletPreferences.setValue("portletSetupShowBorders", "false") $velocityPortletPreferences.setValue("languageIds", "es_ES,en_US") $velocityPortletPreferences.setValue("displayStyle", "1") $theme.runtime("82_INSTANCE_idiomaEnConnectis", "", $velocityPortletPreferences.toString()) $velocityPortletPreferences.reset()