1

我需要根据我所在的页面使模板中的某些部分显示或隐藏。我知道我可以在 liferay-look-and-feel.xml 文件中创建多个主题并提供设置,但这会在管理员中创建多个主题。

是否有其他方法可以访问有关此页面上的 portlet 的信息。例如,如果它有登录 portlet,那么不显示导航链接?

4

2 回答 2

1

我认为简单的方法是在 javascript 上添加这个函数。使用 javascript,您可以例如观察 login-portlet-id 的存在,然后隐藏导航。

于 2012-06-09T08:10:54.960 回答
0

在 liferay 模板中,有一个速度变量可用,称为 $processor。它不过是对象

com.liferay.portlet.layoutconfiguration.util.velocity.TemplateProcessor

portletId 在此对象中可用,但没有直接的方法来获取它。请看一下:

模板处理器.java.html

一旦获得 portletId,您就可以编写逻辑来隐藏某些部分。

于 2012-06-08T09:34:50.860 回答