TYPO3 9.5.5-第二个菜单中未生成口语URL

时间:2019-05-07 08:14:21

标签: slug typo3-9.x

在我当前的TYPO3 9.5.5“经典模式”项目中,在以下文件夹结构中管理3个菜单块:

RootPage
- Home (-> this is a separate menu)
- [FOLDER FOR MAIN MENU]
-- Menu 1
-- Menu 2
-- Menu 3
- [FOLDER FOR META MENU]
-- Contact
-- Privacy Protection

通过MenuProcessors生成菜单,如下所示:

page.10.FLUIDTEMPLATE.dataProcessing {
        // Main menu
        20 = TYPO3\CMS\Frontend\DataProcessing\MenuProcessor
        20 {
            special = directory
            special.value = {$mainMenuFolderPid}
            as = menuMain
            titleField = nav_title // title
            expandAll = 1
            includeSpacer = 0
            levels = 3
        }

        // Meta menu
        25 = TYPO3\CMS\Frontend\DataProcessing\MenuProcessor
        25 {
            special = directory
            special.value = {$metaMenuFolderPid}
            as = menuMeta
                       ...
        }
}

虽然home menumain menu在语音网址方面按预期工作,但是meta menu不能正确创建语音网址,而是直接使用页面标题,这意味着Contact中的“ c”确实大写,Privacy Protection中的“ p”也有大写字母。 最终的URL格式如下:

https://domain.tld/Contact
https://domain.tld/Privacy Protection

这会导致404(“站点配置”中定义的一个; 404工作正常)。

如果我将元菜单更改为list并手动添加页面ID,则会为该菜单生成相同的错误结果。

奇怪的是,当直接从后端打开联系人页面时,会生成正确的url(domain.tld / contact.html)(即使我手动重命名了子弹)。

有人可以帮我理解吗,请问我在这里做错了吗?

2 个答案:

答案 0 :(得分:0)

事实证明,游戏中有第三名叫Fluid的玩家。而且所有这些花哨的标签中都隐藏着一个愚蠢的错字...我没有使用item.link来代替href标签中的item.page.title,而是生成了不希望的输出。我不好...

答案 1 :(得分:0)

听起来像菜单提供程序中的对象符号拼写错误。如果使用menuItem.link,将生成一个链接。但是似乎您可以使用类似menuItem.page.title的标题。