Embeber portlets en un contenido web Liferay

Debido a las grandes ventajas para ajustar a las necesidades Liferay, existen 3 maneras diferentes de incrustar, embeber Portlets dentro de contenidos web, velocity templates y temas hechos para Liferay.

Metodo 1

Velocity

#set ($VOID = $velocityPortletPreferences.setValue('display-style', '1'))

#set ($VOID = $velocityPortletPreferences.setValue('portlet-setup-show-borders', 'false'))
#set ($instanceId = '4Mr89SNIZ0sI')
#set ($myPortletId = "73_INSTANCE_${instanceId}")

$theme.runtime($myPortletId, '', $velocityPortletPreferences.toString())
#set ($VOID = $velocityPortletPreferences.reset())

Donde:

73, es el id del portlet

4Mr89SNIZ0sI, es el id de la instancia

$myPortletId = 73_INSTANCE_4Mr89SNIZ0sI

Referencia

 

Metodo 2

Velocity - HTML

<runtime-portlet name="73" instance="4Mr89SNIZ0sI" queryString="/" />

Donde:

73, es el id del portlet

4Mr89SNIZ0sI, es el id de la instancia

Referencia

 

Metodo 3

Velocity

#set ($locPortletId = "73")
#set ($portletPreferencesFactoryUtil = $portal.getClass().forName("com.liferay.portlet.PortletPreferencesFactoryUtil"))
#set ($portletSetup = $portletPreferencesFactoryUtil.getLayoutPortletSetup($layout, $locPortletId))
#if ($portletSetup.getValue("portletSetupShowBorders", "") != "false")
#set ($temp = $portletSetup.setValue("portletSetupShowBorders", "false"))
#set ($temp = $portletSetup.store())
#end
 
 
Comentarios
No hay ningún comentario aún. Sea usted el primero.