Diferencia entre revisiones de «Visualización dinámica de web content en Liferay»
De Dos Ideas.
(No se muestran 2 ediciones intermedias de otro usuario) | |||
Línea 1: | Línea 1: | ||
− | En este ejemplo se muestra como visualizar de forma dinámica, mediante un parámetro | + | En este ejemplo se muestra como visualizar de forma dinámica, un Web Content especifico mediante su id. |
+ | |||
+ | En el código del template vemos como obtener un parámetro de la url actual (el id del Web Content) y como buscar el contenido para visualizar. | ||
<code> | <code> | ||
Línea 8: | Línea 10: | ||
#set ($webcontent-id = $webContentId) | #set ($webcontent-id = $webContentId) | ||
#set ($webcontent=$journalContentUtil.getContent($group_id, $webcontent-id, "", "$locale", "")) | #set ($webcontent=$journalContentUtil.getContent($group_id, $webcontent-id, "", "$locale", "")) | ||
− | + | ||
+ | ## Para webcontents globales que tienen asociado una estructura y template | ||
+ | ## $journalContentUtil.getContent($company.group.groupId, $webcontent-id, $viewMode, $request.theme-display.language-id , $xmlRequest) | ||
+ | |||
#if($webcontent) | #if($webcontent) | ||
$webcontent | $webcontent | ||
#else | #else | ||
− | <a href="? | + | <a href="?webContentId=WHO-IS-USING-LIFERAY">WHO-IS-USING-LIFERAY</a> |
<br> | <br> | ||
#end | #end | ||
Línea 18: | Línea 23: | ||
</code> | </code> | ||
− | Para asignar un id propio a un Web Content hay que agregar | + | Para asignar un id propio a un Web Content hay que agregar la siguiente propiedad al archivo portal-ext.properties. |
<code> | <code> |
Revisión actual del 17:32 30 oct 2013
En este ejemplo se muestra como visualizar de forma dinámica, un Web Content especifico mediante su id.
En el código del template vemos como obtener un parámetro de la url actual (el id del Web Content) y como buscar el contenido para visualizar.
- set ($current_url = $request.get("attributes").CURRENT_COMPLETE_URL)
- set ($paramName='webContentId')
- set ($webContentId = $httpUtil.getParameter($current_url, $paramName))
- set ($group_id = $getterUtil.getLong($request.theme-display.scope-group-id))
- set ($webcontent-id = $webContentId)
- set ($webcontent=$journalContentUtil.getContent($group_id, $webcontent-id, "", "$locale", ""))
- Para webcontents globales que tienen asociado una estructura y template
- $journalContentUtil.getContent($company.group.groupId, $webcontent-id, $viewMode, $request.theme-display.language-id , $xmlRequest)
- if($webcontent)
$webcontent
- else
<a href="?webContentId=WHO-IS-USING-LIFERAY">WHO-IS-USING-LIFERAY</a>
- end
<a href="/web/guest/prueba">Ir al link</a>
Para asignar un id propio a un Web Content hay que agregar la siguiente propiedad al archivo portal-ext.properties.
journal.article.force.autogenerate.id=false
Esto habilitara en la creación del Web Content la posibilidad de cargar un id propio o la opción de tildar que Liferay lo autogenere.