如何防止用户删除liferay portlet?

Nac*_*cho 4 liferay

我在liferay页面中有一个IFrame portlet.我想要一些快速修复,以防止登录用户删除该portlet.它可以通过用户角色,CSS,代码等完成.这可能吗?

Ger*_*hof 5

我建议您修改主题portlet.vm模板.如果你快速浏览一下sevencogs主题,那就非常简单了:

#if ($portlet_display.isShowBackIcon())
    <a href="$portlet_back_url" class="portlet-icon-back">#language ("return-to-full-page")</a>
#else
    $theme.iconOptions()
    $theme.iconMinimize()
    $theme.iconMaximize()
    $theme.iconClose()
#end
Run Code Online (Sandbox Code Playgroud)

只需删除$theme.iconClose(),您的用户将无法再关闭/删除portlet.请注意,这适用于所有 portlet(因为它是模板).

如果您只想停用某些portlet的关闭按钮,我只想通过CSS来完成.display: none.portlet-close-icon持有iFrame的div继承的类上执行a .特别是

.portlet-iframe .portlet-close-icon {
     display: none;
}
Run Code Online (Sandbox Code Playgroud)

将为liferay iFrame portlet完成工作.