Añadir portlet Visor de Contenido Web en Liferay 7 con Freemarker

por

Liferay LogoHoy os voy a enseñar como añadir un portlet Visor de contenido web en el tema de apariencia de Liferay 7 a través de Freemarker.

Para ello, debemos irnos a nuestro templates/portal-normal.ftl y para añadir el portlet vamos a ver línea a línea como se hace:

	<#assign VOID = freeMarkerPortletPreferences.setValue("portletSetupPortletDecoratorId", "barebone") />

Esta línea establece el decorator que queremos que traiga por defecto el portlet.

	<#assign theme_groupID = htmlUtil.escape(theme_display.getCompanyGroupId()?string) />	
	<#assign VOID = freeMarkerPortletPreferences.setValue("groupId", '${group_id}') />	

En esta línea establecemos el GroupID al que pertenece el portlet.

	<#assign VOID = freeMarkerPortletPreferences.setValue("articleId", "30601") />  

Con esta línea establecemos el Contenido Web que queremos que aparezca en nuestro portlet. El ID del artículo lo podemos obtener una vez hayamos creado el contenido web y veamos sus datos.

	<@liferay_portlet["runtime"] 
		defaultPreferences="${freeMarkerPortletPreferences}" 
		portletProviderAction=portletProviderAction.VIEW 
		instanceId="footercontent" 
		portletName="com_liferay_journal_content_web_portlet_JournalContentPortlet" />        

Por último, inicializamos el portlet con las preferencias que habíamos seleccionado anteriormente junto con la elección del portlet y su instancia.

	${freeMarkerPortletPreferences.reset()}

Antes de terminar, que no se nos olvide resetear las preferencias.

Os pongo también el código completo del portlet para añadirlo:

	<#assign VOID = freeMarkerPortletPreferences.setValue("portletSetupPortletDecoratorId", "barebone") />	
	<#assign theme_groupID = htmlUtil.escape(theme_display.getCompanyGroupId()?string) />	
	<#assign VOID = freeMarkerPortletPreferences.setValue("groupId", '${group_id}') />	
	<#assign VOID = freeMarkerPortletPreferences.setValue("articleId", "30601") />   

	<@liferay_portlet["runtime"]        
		defaultPreferences="${freeMarkerPortletPreferences}"        
		portletProviderAction=portletProviderAction.VIEW        
		instanceId="footercontent"        
		portletName="com_liferay_journal_content_web_portlet_JournalContentPortlet" />        

	${freeMarkerPortletPreferences.reset()}

Todo este código debe incluir en el archivo portal-normal.ftl de nuestro theme para que, cada vez que creemos una página nueva ya esté añadido nuestro portlet y preconfigurado facilitando asi el mantenimiento del portal.

Espero que os sea de utilidad.

COMENTARIOS

DEJA TU COMENTARIO