В моем текущем проекте 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 menu
и main menu
работают, как и ожидалось, в отношении речевых URL, meta menu
не создает корректные речевые URL, а вместо этого напрямую использует заголовок страницы, что означает, что "c" в Contact
действительно написано заглавными буквами, как и «p» в Privacy Protection
, который также имеет и пустое место.Результирующий формат URL выглядит следующим образом:
https://domain.tld/Contact
https://domain.tld/Privacy Protection
, что вызывает 404 (тот, который определен в «конфигурации сайта; 404 работает нормально).
Если я изменю мета-меню на list
и добавьте идентификаторы страниц вручную, будет получен тот же неправильный результат для этого меню.
Как ни странно, при открытии страницы контактов непосредственно из серверной части правильный URL-адрес (domain.tld / contact.html)генерируется (даже если я переименую слаг вручную).
Кто-нибудь может мне помочь понять, что я здесь не так делаю, пожалуйста?