Project

General

Profile

Actions

Bug #88344

closed

HMENU directory incompatible with free mode

Added by Andreas Kiessling about 5 years ago. Updated over 4 years ago.

Status:
Closed
Priority:
Must have
Assignee:
-
Category:
Frontend
Target version:
-
Start date:
2019-05-13
Due date:
% Done:

100%

Estimated time:
TYPO3 Version:
9
PHP Version:
7.2
Tags:
Complexity:
Is Regression:
Sprint Focus:

Description

When TYPO3 is set to run in Free mode, HMENU of type directory stop working for localized pages.
The query to fetch the subpages uses exec_getQuery from the ContentObjectRenderer, thus \TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer::getLanguageRestriction is applied and the pages with the required languages are fetched directly.

In theory, this behaviour is correct, since it returns what it was configured for for, but pages is a special case, where at some points the overlay information from _PAGES_OVERLAY and _PAGES_OVERLAY_LANGUAGE is checked, as well as the page id differs to what the router returns.
See \TYPO3\CMS\Frontend\Page\PageRepository::isPageSuitableForLanguage for the mentioned checks.

It seems like replacing the exec_getQuery with the already existing API does the job, see \TYPO3\CMS\Frontend\ContentObject\Menu\AbstractMenuContentObject::prepareMenuItemsForDirectoryMenu

            // Get sub-pages:
//            $statement = $this->parent_cObj->exec_getQuery('pages', ['pidInList' => $id, 'orderBy' => $sortingField]);
//            while ($row = $statement->fetch()) {

            $rows = $this->sys_page->getMenu($id, '*', $sortingField);
            foreach ($rows as $row) {

Related issues 8 (1 open7 closed)

Related to TYPO3 Core - Bug #89368: Active page Closed2019-10-08

Actions
Related to TYPO3 Core - Bug #89038: HMENUs special "directory" does not work properly with sites fallbackType "free"Closed2019-08-29

Actions
Related to TYPO3 Core - Bug #89989: Since v9.5.12 extendToSubpages has no effect for subpages in menusClosed2019-12-18

Actions
Related to TYPO3 Core - Bug #88685: With "Hide default translation of page" no link for alternate language is generatedClosed2019-07-04

Actions
Related to TYPO3 Core - Bug #85987: Menus doesn't respect language settings and show non translated pagesClosedBenni Mack2018-08-27

Actions
Related to TYPO3 Core - Bug #88987: Menu Generation Fails on Translated WebsitesClosed2019-08-20

Actions
Related to TYPO3 Core - Bug #90971: HMENU regression in 9.5.12Closed2020-04-07

Actions
Related to TYPO3 Core - Bug #93014: translation for navigation is incomplete in free mode since v9.5.16Needs Feedback2020-12-07

Actions
Actions

Also available in: Atom PDF