如何在WCM(Liferay)中获取页面列表?

如何在WCM(Liferay)中获取页面列表?,liferay,freemarker,Liferay,Freemarker,我尝试使用包含导航(页面列表)的模板创建Web内容: 在我的主题navigation.ftl中,它可以工作,但在WCMftl(FreeMarker)中不工作。 那么,如何在WCM中获取页面列表?页面列表仅在(应用程序显示模板)中可用,而不是在中 如果您确实需要该列表并且可以使用ADT,请改用navItems变量。变量nav_items仅适用于主题(我想是为了向后兼容) 文档-很难找到。使用原力,读取源-on 您可能需要使用一个方便的Freemarker脚本来显示所有可用的变量-请参阅James

我尝试使用包含导航(页面列表)的模板创建Web内容:

在我的主题
navigation.ftl
中,它可以工作,但在WCM
ftl
(FreeMarker)中不工作。
那么,如何在WCM中获取页面列表?

页面列表仅在(应用程序显示模板)中可用,而不是在中

如果您确实需要该列表并且可以使用ADT,请改用
navItems
变量。变量
nav_items
仅适用于主题(我想是为了向后兼容)

文档-很难找到。使用原力,读取源-on


您可能需要使用一个方便的Freemarker脚本来显示所有可用的变量-请参阅James Falkner的博客。

非常感谢Tomas,但我得到了相同的错误:
表达式navItems未定义。
。我使用的是Liferay Portal社区版6.2 CE GA4。为了让问题更清楚,您所说的WCM模板到底是什么意思?它是自定义结构的模板吗?你能运行我链接的dump.ftl脚本来查看所有可用变量的列表吗?这意味着将dump.ftl代码粘贴到模板并检查结果。是的,是一个FreeMarker模板。您可以选择所有可用的变量。我的答案与ADT(应用程序显示模板)有关。我希望变量集是相同的,但不幸的是它不同。变量
navItems
确实仅适用于ADT模板。您的用例是什么?如果您确实需要WCM模板中的页面列表,您可以随时使用
serviceLocator
调用
LayoutLocalService
来获取列表。非常感谢!!!!它在ADT上工作。现在我将使用ADT模板,但如果有一个关于如何在WCM模板中获取页面列表的示例,我将尝试。
<nav id="navigation">
    <ul>
        <#list nav_items as nav_item>
            <#assign nav_item_css_class = "" />

            <#if nav_item.isSelected()>
                <#assign nav_item_css_class = "selected" />
            </#if>

            <li class="${nav_item_css_class}">
                <a href="${nav_item.getURL()}">${nav_item.getName()}</a>

                <#if nav_item.hasChildren()>
                    <ul class="child-menu">
                        <#list nav_item.getChildren() as nav_child>
                            <#assign nav_child_css_class = "" />
                            <#if nav_item.isSelected()>
                                <#assign nav_child_css_class = "selected" />
                            </#if>
                            <li class="${nav_child_css_class}">
                                <a href="${nav_child.getURL()}">${nav_child.getName()}</a>
                            </li>
                        </#list>
                    </ul>
                </#if>
            </li>
        </#list>
    </ul>
</nav>
Expression nav_items is undefined