Neos 2.0 面包屑菜单:如何跳过前两级?

Neos 2.0 Breadcrumb menu: How to skip first two levels?

我需要显示一个面包屑菜单,其中跳过了前两级。

Menu 类型的菜单有一个 属性 entryLevel 来控制菜单的开始位置,但 Breadcrumb 似乎并非如此。 (至少没有影响。)

有没有办法在 Neos 中完成此操作?

面包屑在 TYPO3.Neos/Resources/Private/TypoScript/Prototypes/Breadcrumb.ts2 中定义,您可以在站点包的 Root.ts2 中覆盖那里的值。因此,您可以更改 templatePath 并使用 f:for 中的迭代器处理它,或者甚至更好地限制(切片) items 您传递给 TS2 级别的模板。将它翻译成代码,你有 Your.Site.Package/Resources/Private/TypoScript/Root.ts2 和你的页面定义,只需更改 Breadcrumb 部分:

page = Page {
    ...
    body {
        templatePath = 'resource://Your.Site.Package/Private/Templates/Page/Default.html'
        sectionName = 'body'
        parts {
            menu = Menu
            breadcrumb = Breadcrumb {
                # replace items with itemCollection if you're using BreadcrumbMenu (Neos 2+)
                items = ${q(node).add(q(node).parents('[instanceof TYPO3.Neos:Document]')).slice(0, -2).get()}
            }
        }
    ...