CONTENT FALLBACK TRANSLATION NOT WORKING

- SYS_LANGUAGE_OVERLAY - CONTENT_FALLBACK

Wenn man bei Typo3 9 den Content_Fallback setzt, funktioniert dies nicht, da das System im HIntergrund noch den Zusatz:

 languageOverlayMode => hideNonTranslated

setzt! Aus meiner Sicht ist das ein BUG, der eventuell in neueren Versionen behoben wird. Fehler ist aktuell in Version 9.5.2 enthalten.

Der Fehler kann im Core behoben werden, in dem man in der Datei

/typo3/sysext/core/Classes/Context/LanguageAspectFactory.php

ca. Zeile 100 folgenden Eintrag ändert:

AUS:

    public static function createFromSiteLanguage(SiteLanguage $language): LanguageAspect
    {
        $languageId = $language->getLanguageId();
        $fallbackType = $language->getFallbackType();
        if ($fallbackType === 'fallback') {
            $fallbackOrder = $language->getFallbackLanguageIds();
            $fallbackOrder[] = 'pageNotFound';
        } elseif ($fallbackType === 'strict') {
            $fallbackOrder = [];
        } else {
            $fallbackOrder = [0];
        }

        return GeneralUtility::makeInstance(LanguageAspect::class, $languageId, $languageId, LanguageAspect::OVERLAYS_ON_WITH_FLOATING, $fallbackOrder);
    }

WIRD:

   public static function createFromSiteLanguage(SiteLanguage $language): LanguageAspect
    {
        $languageId = $language->getLanguageId();
        $fallbackType = $language->getFallbackType();
        if ($fallbackType === 'fallback') {
            $fallbackOrder = $language->getFallbackLanguageIds();
            $fallbackOrder[] = 'pageNotFound';
            $overlayType = LanguageAspect::OVERLAYS_MIXED;
        } elseif ($fallbackType === 'strict') {
            $fallbackOrder = [];
            $overlayType = LanguageAspect::OVERLAYS_ON_WITH_FLOATING;
        } else {
            $fallbackOrder = [0];
        }

        return GeneralUtility::makeInstance(LanguageAspect::class, $languageId, $languageId, $overlayType, $fallbackOrder);
    }