TYPO3 is the most loved platform website around the world and available in many languages. You can use TYPO3 to create a website in any language that you want with TYPO3 Translation and TYPO3 Localization extensions.
However, TYPO3 does not come with the built-in capability to create multilingual websites. Luckily, there are some powerful TYPO3 translation extensions that allow you to easily add multilingual content to your site.
According to the statistics provided by W3Techs, despite only 25.4% of internet users speaking English, more than half of the content online is written in English — 54%. As so there is a language gap and this creates an opportunity for multilingual website content.
To tap into a truly international online audience, you need to publish multilingual content to have increased visits, conversions, and engagement from native language speakers worldwide.
The best way to translate a TYPO3 website into multiple languages is to install a multilingual TYPO3 extension
Do You Know?
TYPO3 provides localization for 51+ worldwide languages.
In this article, we will show you the best TYPO3 translation extensions that you can use to create TYPO3 multilingual websites. So let’s dig in!
TYPO3 is well known for its multilingual abilities. To create a TYPO3 multilingual website and translate, localize to the TYPO3 admin area. When it comes to choosing a TYPO3 website translation, there are a few things to keep in mind:
Understanding the translation process is one of the most important things you need to check before you dive into installing a plugin on your website. Before selecting a TYPO3 translation plugin, consider the following questions,
- Does this plugin offer manual translation or automatic translation?
- Does it make use of a third-party web app like Google Translate or Deepl?
- Does it require you to download a language pack?
With a multilingual TYPO3 website, definitely you can reach a great audience of the specified language. But you need to take care of SEO criteria, make sure the TYPO3 extension you choose is reputed, and also, don’t forget to translate your SEO data ;)
Automated vs. Human Translation:
If you want to create a localized website, then it’s in your best interest to hire a human translator rather than using an automated translation service. If you want to allow users to specify a language optionally, then using an automated translator might be the right solution.
TYPO3 Core Multi-lingual functionality
TYPO3 CMS comes with the built-in ability to handle websites in multiple languages.
Creating a website in multiple languages with TYPO3 can be done in a variety of ways. You must however make sure to use reference documents like TSref, TYPO3 Core API, etc. to look up the exact syntaxes for the features mentioned.
To make translation within the page, it is as easy as described in steps below,
Adding & Defining a new language
Languages are defined per site. Adding a new language is done in,
Site Management > Sites module
which is restricted to admin users. Detailed information on how to configure your site to add more languages can be found in the Site Handling documentation.
Now let’s learn how translation is done,
Step: 1 Using the menu in the docheader, switch to the “Languages” view.
Step: 2 In the drop-down menu “Create a new translation of this page”, choose a language, let’s say German in this case. The page properties display for the German version of the page.
Step: 3 Configure properties for the German page and Save and close the page.
Step:4 The screen now displays two versions of the content elements showing the default language and the German version side by side.
Step:5 When you choose to translate content, TYPO3 offers two methods:
- Translate - Use this option when you have a strict translation workflow or content structure.
- Copy - Use this option when you would like the content structure to be free and independent between languages.
Step:6 For this example, click the Translate button then click Next. Step 2 of the wizard will pass by automatically since we are translating in a single language. Step 3 provides a summary of the elements that will be translated.
Step:7 Now just click on the translate option and The German version of the content element is now prepended with [Translate to German:].
Your German page is now ready!
One of the beauties of TYPO3 is the Multilingual & Localization feature of the backend & frontend. After 20+ years, the TYPO3 community decided to improve and modernize localization with TYPO3 Crowdin’s cloud-based SaaS solution.
Basically, Crowdin is a cloud-based solution that streamlines localization management for the TYPO3 community. It's the perfect place to manage all of your multilingual content effectively.
At the end of 2019, Georg Ringer initiated and led the TYPO3 initiative called “Localization with Crowdin” with first-goal, Let’s integrate and launch Crowdin TYPO3 v10.
Interesting advantages of TYPO3 and Crowdin collaboration is,
- Inline Editing in TYPO3 Backend
- Cloud-based flexible content TYPO3 internationalization solution.
- The flexibility of Crowdin to migrate and translation from any Translation server
- Structured, Package translation to follow the structure required by TYPO3 sites
- Single source, Translate text once that is used in different versions and parts of the software.
- Machine translation, Let machines do the first pass, and then human-translators can edit the suggestions.
- Glossary, we can use our TYPO3 glossary to make sure specific words are correctly translated (e.g. Template in german, TypoScript, or SEO)
- Translation memory can reuse existing translations, no matter if done for the TYPO3 Core or an extension.
Another way to translate or localize TYPO3 translation is doing it manually with XLIFF files with the use of files containing localizable strings. The XML Localisation Interchange File Format (or XLIFF) is an OASIS-blessed standard format for translations.
In the TYPO3 Core, XLIFF files are located in the various system extensions as needed. The system extension “lang” provides several general-purpose files plus the classes related to the localization API.
In Extbase-based extensions, XLIFF files are expected to be located in Resources/Private/Language. The main file (locallang.xlf) will be loaded automatically and available in the controller and Fluid views without further work needed.
Here is what the translation of our sample XLIFF file could look like, one needs to set target text manually in the file.
<xliff version="1.0" xmlns:t3="http://typo3.org/schemas/xliff"> <file source-language="en" target-language="de" datatype="plaintext" original="messages" date="2011-10-18T18:20:51Z" product-name="my-ext"> <header/> <body> <trans-unit id="headerComment" xml:space="preserve"> <source>The default Header Comment.</source> <target>Der Standard-Header-Kommentar.</target> </trans-unit> <trans-unit id="generator" xml:space="preserve"> <source>The "Generator" Meta Tag.</source> <target>Der "Generator"-Meta-Tag.</target> </trans-unit> </body> </file> </xliff>
Contrary to “locallang XML” files, only one language can be stored per file. Each translation in a different language goes to an additional file.
The Memsource plugin provides an efficient way to localize content on your TYPO3 site. Using the plugin, you can take advantage of the tools available in Memsource's powerful translation platform and streamline your translation process.
This TYPO3 translation extension will integrate easily to use readspeaker service to your website. Plus this extension provides 30+ Languages, 50+ Voices, and is easy to use. Readspeaker read aloud your website texts.
7, 8, 9
This TYPO3 extension provides an option to translate content elements and tca record fields to the desired language(supported by Deepl). Google translate option is also provided as they provide support for many languages that deepl isn’t providing.
For both Deepl translate and Google translate, there are two modes-normal and autodetect, where the latter auto detects the source language and translates it to the desired language.
This extension provides a simple possibility to make real translations within a TYPO3 instance.
The Localization Manager (l10nmgr) is a localization management extension for TYPO3 supporting a variety of online and offline translation workflows.
This module serves several functions for editing language files. The extension differs between editors and administrators with appropriate privileges. Normal users are allowed to edit only languages for which they have permission. Following functions are implemented in this module:
Formats: PHP, XML and XLF, Conversion of formats, Splitting and merging of language files, Override mode, Editing L10n folder content, Simple editing of constants and languages (edit/add/rename/delete constants), Flexible search and view of constants and values, the Tree view of constants, Meta information handling, Backups, recovering and diff view.
8, 9, 10
The Translate backend module is an editor for locallang.xlf files (Resources/Private/Language/locallang*.xlf). Additionally, the translation files can be exported as CSV (Excel) files. See extension manager for configuration options.
Some of the key features of this extension are, side editing of multiple languages, Changing/adding/deleting of label keys, CDATA support, CSV import/export function, Configurable restrictions for non-admin backend users, and Search for labels across all extensions.
9, 10, 11
This TYPO3 Translation extension provides modules to add custom translations to extension language labels and to manage settings. If you are looking for a handy TYPO3 translation tool, Snowbabel is for you. Moreover, it is powered with angular js and extbase.
This extension provides a fully automated workflow and a graphical user interface for the well-known Localization Manager (l10nmgr). While the L10nmgr still provides exports and imports of records and files, the Localizer will take care of all the necessary steps in between. Editors responsible for translations won't have to deal with any L10nmgr configurations anymore and as an administrator, you create just one configuration per Localizer Project.
This extension extends the TYPO3 translation handling by translation records that can be edited by backend users. In this way, backend users are able to translate labels without having access to the language files.
Adds an item to the flush cache menu to clear just the language (l10n) cache. Also provides a command-line tool for that.
This utility extension extends the language handling of TYPO3 to be able to use a simple CSV file format to specify language labels. While the XLIFF file format is a widely used standard and is more powerful, CSV files can be a pragmatic approach for language files that only contain a handful of entries.
9, 10, 11
With twelve helpful TYPO3 Multilingual extensions, choosing the best one might seem a bit confusing for you. To simplify your choice, consider the following points in your mind,
- Do I want to use automatic machine translation or manual translation?
- How important is multilingual SEO to my strategy? Is it important that Google can index the translated versions of my site?
- Do I want to translate my content using a visual interface? Or is a behind-the-scenes editor ok?
- Is human-translated content the best fit for me?
Answering these questions might help you to choose the extension that works best for you.
Do you have any questions? Which TYPO3 Translation or Localize extension are you using for your site? How beneficial has switching to a multilingual TYPO3 site been to your site's traffic? Let's discuss it in the comments!