如何在 Liferay 的导航菜单中隐藏页面中的导航菜单?

How to hide navigation menu in pages that are hidden in Navigation Menu in Liferay?

换句话说,我想在控制面板中选中Hide from Navigation Menu选项的其他私人页面隐藏导航菜单。

在我的主题中,我只在私人页面上显示导航菜单:

<#if layout.isPrivateLayout()>
    <#if has_navigation && is_setup_complete>
        <#include "${full_templates_path}/navigation.ftl" />
    </#if>
</#if>

而且我想进一步将它隐藏在一些私人页面(用户作为超链接打开的页面)中。它们不是导航菜单的一部分,因为我已经选中了选项 Hide from Navigation Menu - 但导航菜单确实显示在其中。

如果没有直接的方法,我如何获取页面名称并将导航菜单设置为不在这些页面中显示。

我正在使用 Liferay 7 CE GA2,但我认为这是一个普遍的问题。

你走对了路。唯一缺少的是检查 Layout.isHidden():

<#if layout.isPrivateLayout() && !layout.isHidden()>
   <#if has_navigation && is_setup_complete>
      <#include "${full_templates_path}/navigation.ftl" />
   </#if>
</#if>