我是Liferay的新手,我试图弄清楚是否有可能动态地动态添加或减少子页面。从我迄今为止所做的工作来看,我只能使用管理控制面板将静态数量的子页面添加到主页面。
我的用例是我有一个主页面,其中包含我的所有图表,然后我为每种类型的图表都有一堆子页面。图表的数量是动态的,具体取决于公司,因此有些可能有10个子页面而其他可能只有3个。这可能吗?我唯一能找到的就是关于自定义导航的文章https://liferayinfo.wordpress.com/2012/09/24/liferay-custom-navigation/。
答案 0 :(得分:0)
这取决于你认为“动态”的东西:如果它实际上是“动态”:是的,有动态处理页面的选项 - 这种方法非常复杂。对于stackoverflow上的简单答案来说,这个方法太复杂了。
但并非一切都丢失了:您可能会建立自己的导航portlet,根据您所知道的标准,确定显示您静态创建的子页面的数量(以及哪些)。
当您的每个公司(谨慎:误导性术语 - Liferay使用“公司”作为“门户网站实例”的技术名称)使用不同的网站时,您还可以使用网站模板或页面模板 - 包括此自定义导航portlet
此外,您始终可以使用Liferay的API创建页面和页面层次结构。 Thorsten Laux的评论已提到LayoutLocalService
。为了可维护性:如果你在创建页面时静态使用它会更容易,而不是在你拥有数据时动态地使用它(我们再次:动态使用对于这个答案来说太复杂了。)
如果它足以隐藏某些页面:使用自定义导航portlet而不是Liferay自己的。根据您愿意最终得到的复杂性:您可以创建自己的portlet,也可以使用WebContent结构和模板动态决定链接哪些页面以及哪些页面不链接(这实际上会隐藏它们)。