diff --git a/typo3/sysext/frontend/Classes/Typolink/PageLinkBuilder.php b/typo3/sysext/frontend/Classes/Typolink/PageLinkBuilder.php index 62cae99795b6a20af0461121bc5a8d8857202573..8f723276fdbeaa0163c51bc14dc12bd35e9f07f9 100644 --- a/typo3/sysext/frontend/Classes/Typolink/PageLinkBuilder.php +++ b/typo3/sysext/frontend/Classes/Typolink/PageLinkBuilder.php @@ -402,6 +402,7 @@ class PageLinkBuilder extends AbstractTypolinkBuilder */ protected function generateUrlForPageWithSiteConfiguration(array $page, Site $siteOfTargetPage, array $queryParameters, string $fragment, array $conf): UriInterface { + $tsfe = $this->getTypoScriptFrontendController(); $currentSite = $this->getCurrentSite(); $currentSiteLanguage = $this->getCurrentSiteLanguage(); // Happens when currently on a pseudo-site configuration @@ -434,9 +435,9 @@ class PageLinkBuilder extends AbstractTypolinkBuilder if ($fragment && $useAbsoluteUrl === false && $currentSiteLanguage === $siteLanguageOfTargetPage - && $targetPageId === (int)$GLOBALS['TSFE']->id + && $targetPageId === (int)$tsfe->id && (empty($conf['addQueryString']) || !isset($conf['addQueryString.'])) - && !($GLOBALS['TSFE']->config['config']['baseURL'] ?? false) + && !($tsfe->config['config']['baseURL'] ?? false) && count($queryParameters) === 1 // _language is always set ) { $uri = (new Uri())->withFragment($fragment);