2

我正在将我当前的 Web 应用程序迁移到 liferay。我需要根据我的应用程序自定义左侧导航栏。例如,我有左侧垂直导航菜单,其中包含以下项目

首页
公司信息
收入详情

单击每个菜单项时,将在右侧内容窗格中打开单独的 portlet。例如,公司信息应该转到我创建的自定义公司 portlet。

您能否帮助我了解如何在 Liferay 6.2 中实现这一点?谢谢你。

4

3 回答 3

1
  1. 如果您想使用左侧导航栏显示部署在页面上的 portlet,那么您可以使用Panel Pages。在此页面上搜索“面板页面”部分。
  2. 如果您想让 liferay 页面导航本身作为垂直条而不是水平条,那么您可以创建主题来设置导航样式。navigation.vm是您要查找的文件。

根据下面的评论,这是我的建议:

建议一

  1. 使用 30-70 布局。
  2. 在 70 侧(右侧),您可以一个接一个地放置所有 portlet。
  3. 在 30 侧(左侧),您可以放置​​一个 Web 内容显示 portlet。
  4. 因此,在 web 内容显示 portlet 中,您可以在编辑器中使用Source选项卡来包含 javascript/css/html 以获取到 portlet 的可点击链接。
  5. 有各种 javascript 库可用于在单击链接时提供滚动效果。

建议二

  1. 这也是类似的建议,至少概念是一样的。
  2. 唯一的区别是您可以有一个自定义布局,其中已经嵌入了网络内容,并且还可以在布局中编写库和 javascript。

建议三

  1. 如果您想要自动化的左侧导航窗格,即当页面加载时,它具有portlet 名称并链接到右侧的portlet,而无需手动干预。
  2. 这将需要在布局内进行大量编码。
  3. 您可以利用布局中可用的不同变量来查找页面上的 portlet 并创建链接。
  4. 在布局中有一个左侧部分并填充(3)中找到的链接,右侧将像往常一样。

当从配置选项卡的选项卡中单击 Web 内容中的特定链接时,您可以利用 portlet-Ids 或 css 类滚动到它们Look & Feel,如下所示:

在此处输入图像描述

希望这可以帮助。

于 2014-05-19T10:35:51.997 回答
1

Liferay 包装了在具有唯一 portlet 实例 id 的 div 标签内显示的 portlet 内容。在 portlet 标题中,外观 -> 高级样式,它显示该 portlet id,例如 Portlet ID:#p_p_id_73_INSTANCE_xZVK6VFSqAzJ_

此 ID 可用于在锚点中散列标记以将焦点移至该 portlet 部分。

注意:如果页面上的 portlet 是可实例化的,那么删除一个实例并再次添加实例会获得新的实例 ID。因此,以前的哈希标签链接不起作用。

于 2014-05-19T16:06:13.350 回答
0

如果您想要左侧导航,请使用 30-70 布局并在左侧使用 SiteMap portlet

于 2014-11-26T10:10:01.383 回答