6

我需要自定义哪个 portlet 出现在“添加更多 portlet 菜单”中,如下图所示:

在此处输入图像描述

我需要根据登录的用户或站点(社区)来限制此菜单中显示的 portlet 的数量。因此,站点所有者或站点管理员将只能将那些 portlet 添加到他们的页面中,这些 portlet 由omni-admin 为他们决定。

Liferay 是否提供任何此类功能(通过配置或其他方式)还是我必须创建一个新的 portlet 和一个挂钩来实现这一点?

环境: Liferay 6.1 CE GA2

任何想法将不胜感激。

谢谢你

4

3 回答 3

6

以下是Liferay 论坛中对同一问题给出的答案:

您可以从管理端限制哪些 portlet 可以添加到页面中,而不必进行任何开发。

但是,您将需要创建一个角色并在其上添加每个人。以下是实现此目的的步骤:

  1. 让用户成为您希望他们添加 portlet 的组织或站点的一部分。
  2. 转到Control Panel->Roles并成为常规角色(不是组织或站点角色)
  3. 在定义权限下拉菜单中,转到Portal-> Site-> Page-> 并检查Update为已定义的权限。
  4. 再次转到 Define-permissions 下拉菜单并转到Site Application->(选择您希望用户添加到页面的 Portlet 名称)-> Add to page
  5. 如有必要,如果您希望用户添加其他 portlet,请重复第 4 步。
  6. 将此角色添加到您的用户:转到Control Panel-> User and Organizations。单击您的User并转到Roles
  7. 最后,您需要转到Server Administration并执行Clean Up Permissions以清除GuestPower Users角色的权限。

现在应该这样,无论用户附加到该角色,他们都会在左角看到一个“添加”按钮,并且只能添加您在角色权限中指定的 portlet。

于 2012-09-24T11:29:35.183 回答
0

您需要为要允许的 portlet 授予 ADD_TO_PAGE 权限。默认情况下,社区管理员对所有 portlet 拥有相当广泛的权限。检查“定义权限”中的“社区管理员”角色(控制面板/角色/社区管理员/操作/定义权限)。

我建议查看允许社区管理员做什么并创建自定义角色,定义其权限并使您的“受限”管理员成为该角色的成员,而不是默认的社区管理员。

于 2012-05-20T09:29:49.220 回答
0

有更好的方法。在其权限表中检查所有 portlet 权限。转到 portlet 管理器并首先取消选中所有“用户”

所以它没有显示“添加更多portlet菜单”

于 2013-04-04T10:33:56.267 回答