---
title: "Deprecation: #85543 - Language-related properties in TypoScriptFrontendController and PageRepository"
manual: "TYPO3 Core Changelog"
version: "main"
permalink: "https://docs.typo3.org/permalink/changelog:deprecation-85543"
source: "Changelog/9.4/Deprecation-85543-Language-relatedPropertiesInTypoScriptFrontendControllerAndPageRepository.rst"
typo3-version: "9.4"
typo3-major: 9
type: "deprecation"
issue: 85543
forge: "https://forge.typo3.org/issues/85543"
tags: ["Frontend", "PHP-API", "FullyScanned", "ext:frontend"]
rendered: "2026-09-17T12:41:04+00:00"
---

# Deprecation: #85543 - Language-related properties in TypoScriptFrontendController and PageRepository {#deprecation-85543-language-related-properties-in-typoscriptfrontendcontroller-and-pagerepository}

See [forge#85543](https://forge.typo3.org/issues/85543)

## Description {#description}

With the introduction of a LanguageAspect within the new Context API, the following public properties
have been marked as deprecated:

-   `TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->sys_language_uid`
-   `TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->sys_language_content`
-   `TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->sys_language_contentOL`
-   `TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->sys_language_mode`
-   `TYPO3\CMS\Frontend\Page\PageRepository->sys_language_uid`

Additionally, in order to create a better abstraction, the third constructor argument of
`\TYPO3\CMS\Core\Utility\RootlineUtility` now expects a `Context` object instead of a `PageRepository`.

## Impact {#impact}

Accessing or setting one of the properties will trigger a PHP `E_USER_DEPRECATED` error.

Calling RootlineUtility constructor with a PageRepository as a third argument will trigger a PHP `E_USER_DEPRECATED` error.

## Affected Installations {#affected-installations}

Any multi-lingual TYPO3 installation with custom non-Extbase-related PHP code.

## Migration {#migration}

Use the new `LanguageAspect` with various superior properties to access the various values.

```php
$languageAspect = GeneralUtility::makeInstance(Context::class)->getAspect('language');
// (previously known as TSFE->sys_language_uid)
$languageAspect->getId();
// (previously known as TSFE->sys_language_content)
$languageAspect->getContentId();
// (previously known as TSFE->sys_language_contentOL)
$languageAspect->getLegacyOverlayType();
// (previously known as TSFE->sys_language_mode)
$languageAspect->getLegacyLanguageMode();
```

Also, have a detailed look on what other properties the language aspect offers for creating fallback chains,
and more sophisticated overlays.
