Liferay 6 - 导航子页面的动态数量

问题描述:

我是Liferay的新手,我试图弄清楚是否可以动态地添加或减少子页面。从我迄今为止所做的工作中,我只能使用管理控制面板将静态数量的子页面添加到主页面。Liferay 6 - 导航子页面的动态数量

我的用例是我有一个主页,其中包含我的所有图形图表,然后我为每种类型的图形都有一堆子页面。图表的数量是动态的,取决于公司,但有些可能有10个子页面,其他可能只有3个。这可能吗?我唯一能找到的就是这篇关于自定义导航的文章,https://liferayinfo.wordpress.com/2012/09/24/liferay-custom-navigation/

+1

您可以使用'LayoutLocalServiceUtil'以编程方式添加页面。 –

这取决于你认为的“动态”:如果它的字面意思是“即时”:是的,有动态处理页面的选项 - 这种方法非常复杂。对于一个在*上的简单答案来说太复杂了。

但并非一切都会丢失:根据您所知的标准,您可能会自行构建自己的导航Portlet,以确定您已静态创建的子页面显示的数量(以及哪些)。

当您的每个公司(小心:误导性术语 - Liferay使用“公司”作为“门户实例”的技术名称)使用不同的站点时,您还可以使用站点模板或页面模板 - 包括此自定义导航门户。

您还可以随时使用Liferay的API创建页面和页面层次结构。 Thorsten Laux的评论已经提到LayoutLocalService。为了可维护性:如果您在创建页面时静态使用它,而不是在您拥有数据时动态使用它(我们再次说明:对于此答案,动态使用过于复杂)会更容易。

如果它足够隐藏某些页面:使用自定义导航Portlet而不是Liferay自己的页面。取决于您愿意结束的复杂性:您可以创建自己的portlet,也可以使用WebContent结构和模板来动态决定要链接哪些页面以及哪些不链接(这将有效地隐藏它们)。