---
title: "Getting started: build a 2-language site"
date: 2026-07-25
author: "Claude MCP"
---

# Getting started: build a 2-language site

This walkthrough takes a fresh Joomla site with only English (the language Joomla installs with by default) and turns it into a working 2-language site, English and German, with a working language switcher, translated content, and translated menus. It covers the Joomla setup first, then the Autolanguage configuration, in the order you actually need to do it.

 
## Before you start

 This assumes a Joomla site currently running in one language only, with Autolanguage installed but not yet configured. If you already have a working multilingual setup and only want to add Autolanguage to it, most of the Joomla steps below are already done, skip to "Configure Autolanguage".

 
## 1. Install the second language

 Go to **System > Install > Languages**, find German in the list, and install it. If you also want the admin backend available in German, install the Administrator language pack too, that's a separate checkbox on the same screen.

 
## 2. Add German as a Content Language

 Go to **System > Content Languages > New**. Set the Title (for example "German"), the Language Tag (`de-DE`, this has to match the language pack you just installed), and an image/flag if you want one shown in the language switcher. Save.

 
## 3. Turn on the plugins that make a multilingual site work

 Go to **System > Plugins** and enable these two, they ship with Joomla:

 
|  |  |
| --- | --- |
| System - Language Filter | Adds the language code to your URLs and filters content by the visitor's language. This is also what requires every language to have its own Home menu item, see step 6. |
| System - Language Code | Sets the correct `lang` attribute on each page for the language it's shown in. |

 
## 4. Add the language switcher module

 Go to **Content > Site Modules > New > Language Switcher**. Assign it to a module position that's visible on every page (header or footer), set its Language to "All", and publish it. Visitors use this to jump between the English and German versions of the page they're on. The module will start working when you finish the follow steps.

 
## 5. Set up your menus

 This is the step most customers get wrong, and it directly affects whether Autolanguage can keep your menus in sync. What you do here depends on your edition.

 
### PRO: let Autolanguage manage menu naming for you

 Autolanguage PRO recognizes which menu belongs to which language by its technical name (not its title), using a fixed pattern: `<name>-<2-letter language code>`, for example `mainmenu-en` and `mainmenu-de`. It manages this automatically:

 
- The first time Autolanguage processes your existing menu (once you translate a menu item from it), it renames the menu's technical name to end in `-en` if it doesn't already, and adds "(EN)" to its title. You'll see a notice in the admin when this happens.
- When you translate a menu item, Autolanguage looks for a menu named with the matching `-de` suffix. If it doesn't exist yet, Autolanguage creates it (with a matching title, "(DE)" appended), and clones the item into it.

 In practice: don't pre-create the German menu yourself. Keep your existing menu's name simple (for example "Main Menu"), translate one menu item from it, and Autolanguage creates the correctly named German menu for you on the fly. Every item you translate afterwards lands in that same menu.

 If you already created a second menu manually before reading this, with a name that doesn't follow the `-de` pattern, Autolanguage won't recognize it. It will either create a separate, correctly named German menu next to it (now you have two), or, if no matching menu exists at all, add the translated items into your English menu instead, with a random number appended to the alias to avoid clashes. Neither is what you want. Rename your menu's technical menu type to match the pattern (for example `mainmenu-de` if your English one is `mainmenu-en`) before translating anything into it, then Autolanguage will find and use it correctly from that point on.

 Enable this behavior in **Components > Autolanguage > Options > Configuration - Menu > Translate Menu Items**.

 
### FREE: build the German menu yourself

 Menu translation is a PRO feature. On FREE, create a second menu for German manually (**Menus > Manage > New Menu**), add your menu items, and translate their titles by hand. Set each item's Language to German. The technical naming pattern described above is an Autolanguage PRO mechanism, on FREE it doesn't apply, name your menu however you like. To link an English menu item to its German equivalent so the language switcher can jump between them, use Joomla's own menu item Associations (open the menu item, go to the Associations tab, and select its counterpart in the other language).

 
## 6. Give every language a Home menu item

 With Language Filter enabled, each language needs exactly one menu item marked as its Home page, in that language's own menu. Open the relevant top-level item, go to the Details tab, and set "Default Page" to Yes. Without this, visitors switching to German (or hitting a German URL directly) can get an error or an empty page.

 
## Configure Autolanguage

 
### Pick a translation driver

 Without a driver configured, Autolanguage runs in copy mode: it duplicates content into German without actually translating it, useful for checking your structure but not for a live site. To translate for real, set up an API key with a supported service (Google Cloud Translation, Microsoft Azure Translator, DeepL, OpenAI, Anthropic, Google Gemini, xAI/Grok, Mistral, or DeepSeek). See "Configuration - Service & API" and the matching API key article for your chosen service for how to get and enter a key.

 
### Set your source and target languages

 In **Configuration - General**, set Active Source Language to English and Target Languages to German. This tells Autolanguage which language your original content is in and which language(s) to create translations for.

 
### Check which fields get translated

 Every content type (Articles, Categories, Menu, Modules, Tags, Mail Templates) has its own Translatable Fields setting, in the matching Configuration article. A fresh install starts with every available field enabled, in both FREE and PRO, so there's nothing to turn on. If you don't want a specific field translated (for example, you write your own German meta description by hand), open that content type's Configuration article and switch it off there.

 
### Choose Upon saving or Batch

 Translation method, also in Configuration - General, decides how translation gets triggered:

 
|  |  |
| --- | --- |
| Upon saving | Shows a banner when you save an English item, offering to translate it there and then. Good for a site you're actively building, you translate as you go. |
| Batch | Adds a "Translate" button to the overview screens (Articles, Categories, Menu, and so on), so you can translate everything that's missing in one action. Good for an existing English site you're adding German to after the fact. |

 With Batch, Autolanguage always refreshes existing translations when it runs, there's no separate setting to turn that on or off, it just happens. That "Update Existing Translations" option only shows up (and only needs a decision from you) when Translation method is set to Upon saving.

 
## 7. Translate your content

 Building a new site: leave Translation method on Upon saving, and translate each item as you create it, using the banner.

 Adding German to an existing English site: switch Translation method to Batch, then go to Content > Articles (or Categories, or Menus > your menu), and use the Translate button in the toolbar to translate everything that's missing a German version in one go.

 
## 8. Check that it actually works

 
- **Switcher visible?** Confirm the Language Switcher module is published and assigned to a position that's actually rendered on your template.
- **Content translated?** Filter Articles by Language = German, open a translated article, and check its Associations tab, it should show a link back to the English original. If it's missing, the association didn't get created.
- **Menu translated?** Check Menus > Manage for a second, correctly named German menu (PRO) or your manually built one (FREE), with the same structure as the English menu.
- **Switcher actually switches pages, not just languages?** Click it on a few different pages. If it always lands on the homepage instead of the equivalent German page, the association between that specific article/category/menu item and its German counterpart is missing, check the Associations tab on both sides.

 For anything that still doesn't look right, see "Troubleshooting & FAQ".
