Liferay 7.1 - 限制 porlets/modules 对虚拟实例(公司)的访问

Liferay 7.1 - Restricted access for porlets/modules to a virtual instances (company)

我创建了一个新的虚拟实例。

我想知道是否可以限制我的自定义 portlet 仅在一个虚拟实例中可用和添加?

而且,我想知道是否可以用同样的方式限制 Hooks 和 Fragments? (例如,我有一个用于用户个人栏的片段和一个用于登录挂钩的挂钩。我只想为一个 VI 而不是另一个 VI 激活它们)。

谢谢,

通过将插件部署到服务器,它们可用于服务器上的所有内容 运行,例如所有虚拟实例。

我相信主题有一种声明性的方式来枚举它们应用的 companyId(或 companyIds),但其他插件没有这个。

话虽这么说,但稍加努力,您仍然可以实现您的需要:您的插件很可能可以访问 companyId 并可以进行自己的检查。您还可以自定义每个虚拟实例的权限,以删除虚拟实例上每个人对某些 portlet 的“ADD_TO_PAGE”权限。

对于片段,您可能会询问 JSP 片段,因为 CMS 片段特定于站点,甚至不是实例。在那里你必须使用条件:如果你在你想要更改的 companyId 上:渲染。否则:跳过修改。但是,您应该尽可能地减少 Fragment 的使用:它们开发得很快,但很快就会变成维护怪兽:您正在处理底层版本的实现级别,没有什么可以阻止您在以后的版本中进行更改相同的 JSP 然后你必须 3-way-merge.