TYPO3 v10 has reached end-of-life as of April 30th 2023 and is no longer being maintained. Use the version switcher on the top left of this page to select documentation for a supported version of TYPO3.
Need more time before upgrading? You can purchase Extended Long Term Support (ELTS) for TYPO3 v10 here: TYPO3 ELTS.
Using XLF labels in TypoScript structures¶
XLIFF (XLF) files are XML files containing labels that the system can fetch in a localized version if the relevant translations are installed. It is possible to retrieve values from XLF files using TypoScript:
page.20 = TEXT
page.20.data = LLL:EXT:indexed_search/Resources/Private/Language/locallang.xlf:form.submit
This looks for the label
form.submit in the file
Resources/Private/Language/locallang.xlf from extension
If the frontend is now accessed in the language "de", the german language
is configured in the site configuration and the german translations
are installed in getLabelsPath()/
de/, the output should be "Suche"
(instead "Search" which is what you will get if the label is retrieved
for the default language).
Using XLF labels in frontend plugins¶
Making your code ready for internationalization is covered in Internationalization and Localization and basics about XLIFF files are found in XLIFF Format ("TYPO3 Explained"). Properly made plugins should use XLIFF files for every label that they used, so that they can be translated and thus generate a proper output when a specific language is requested.
For instance, if the page is accessed in the language "de" and the German translations are installed, you will see this page for "indexed search":
Overriding an existing translation is possible using custom XLIFF files. This process is described in Core APIs.
It is also possible to override a label using TypoScript, but this
works only for plugins based on the
class and not for those based on Extbase. See the
TypoScript Reference for more information.
It is also possible to create XLIFF files for a language into which TYPO3 CMS is not translated yet. This process is also described in Core APIs.