扩展TYPO3 7中的fluid_styled_content菜单

时间:2016-01-28 14:09:07

标签: typo3 fluid typo3-7.x

我正在寻找一种方法来扩展TYPO3 7中的fluid_styled_content菜单,并且不确定如何继续。例如,Type1菜单具有以下代码:

<ce:menu.directory pageUids="{pageUids}" as="pages">
<f:if condition="{pages}">
    <ul class="ce-menu ce-menu-1">
        <f:for each="{pages}" as="page">
            <li>
                <f:link.page pageUid="{page.uid}">
                    {page.title}
                </f:link.page>
            </li>
        </f:for>
    </ul>
</f:if>
</ce:menu.directory>

现在我正在寻找扩展菜单的方法,以便在可用时显示子页面。

如果此页面包含子页面,请显示包含子页面的列表(作为嵌套的UL树)。

如何使用Fluid?

1 个答案:

答案 0 :(得分:0)

我不知道你正在使用的视图助手(<ce:menu.directory />)。我想它需要一个页面uid的列表并获取子项(menu.directory)并将它们放入数组/ ObjectStorage({pages}) - 它也可以只创建一个选定页面的数组uid和那么这个答案就不对了。

您始终可以使用视图助手<f:debug>{variableName}</f:debug>来调试您拥有的内容。

试试这个:

<ce:menu.directory pageUids="{pageUids}" as="pages">
    <f:if condition="{pages}">
        <ul class="ce-menu ce-menu-1">
            <f:for each="{pages}" as="page">
                <li>
                    <f:link.page pageUid="{page.uid}">
                        {page.title}
                    </f:link.page>
                    <ce:menu.directory pageUids="{page.uid}" as="subPages">
                        <f:if condition="{subPages}">
                            <ul class="level-2">
                                <f:for each="{subPages}" as="subPage">
                                    <li>
                                        <f:link.page pageUid="{subPage.uid}">
                                            {subPage.title}
                                        </f:link.page>
                                    </li>
                                </f:for>
                            </ul>
                        </f:if>
                    </ce:menu.directory>
                </li>
            </f:for>
        </ul>
    </f:if>
</ce:menu.directory>

如果上述方法无效,请尝试在调试标记中转储{page}并使用输出更新您的问题。