Wednesday 10. March 2010
Multi language setup in TYPO3
29.07.2009 13:07

If you are building a site, which should support more than one language, there are two ways of doing this. Okay, perhaps there are more than two, but I will only give two examples.

The two I will cover is:
1. Manually adding language page
2. Integrated TYPO3 language support

1. Manually adding language page

This I will only touch briefly, as the solution should be obvious when the layout is presented. It should be very easy. Just create a tree like this and manually do the linking:
Manually Language Setup
That’s it.

2. Integrated TYPO3 language support

This is quite different compared to the first setup. We will be using the built-in language support in TYPO3, based on a tree structure like this:
Tree structure for a TYPO3 language setup

First step is to create the languages and this is done by selecting list, clicking your site in the tree structure and then adding a website language:
Adding a website language step 1
Adding a website language step 2

Then create the number of languages needed for the site.
Adding a website language step 3

Second step is the template configuration. Before doing this, we have to check which id numbers the languages has been given. This is done by selecting list on your site (just as when we created the languages) and the hover your mouse above each language:
Adding a website language step 4 - getting the language id
When this is done, then go to the template setup field and enter the following:

config.sys_language_overlay = hideNonTranslated
config.linkVars = L

[globalVar = GP:L=en]
  config.sys_language_uid=2
  config.language = en
[global]

[globalVar = GP:L=dk]
  config.sys_language_uid=1
  config.language = dk
[global]

What this does is:
config.sys_language_overlay = hideNonTranslated will hide a page or content element, if is does not have content for the specific site. Remove or outcomment this, if you want all elements displayed.
config.linkVars = L is the parameter used in the url for selecting language. Ie http://domain.tld/index.php?id=2?L=dk
[globalVar = GP:L=dk] a section like this, configures the language based on the parameter passed by the linkVars. Here it will trigger on L=dk
config.sys_language_uid=1 this will join the dk-parameter with the language id 1, which we found earlier.
config.language = dk this will set the page language for dk

Third and final step is to configure a page to use the new languages. This is done by selecting list, clicking the page and adding an Alternative Page Language
Adding a website language step 5
Adding a website language step 6
Then select which language you want to create a page for, type in the page title and save it.
Adding a website language step 7
We are now ready for translating the page. When editing an element on the newly configured page, there is now a new option in the top of the page. Select the new language and type in the translation.
Adding a website language step 8

That’s it. TYPO3 will now display the Danish content when visiting the page with the L=dk parameter in the url.

Tags: ,

One Response to “Multi language setup in TYPO3”

  1. Michael Cannon Says:

    Thank you for the this straight forward how-to on enabling multiple languages with TYPO3. Please keep these helpful articles coming.

Leave a Reply