TYPO3 9.5.5 - Говорящие URL не генерируются во втором меню - PullRequest
0 голосов
/ 07 мая 2019

В моем текущем проекте 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)генерируется (даже если я переименую слаг вручную).

Кто-нибудь может мне помочь понять, что я здесь не так делаю, пожалуйста?

1 Ответ

0 голосов
/ 07 мая 2019

Ну, как выясняется, в игре есть третий игрок по имени Флюид.И там во всех этих причудливых тегах была скрыта глупая опечатка ... Вместо того, чтобы обращаться к item.link в теге href, я вместо этого использовал item.page.title, который генерировал нежелательный вывод.Мой плохой ...

...