Managing languages
You manage the languages your site translates into at Settings → Advanced → Umbraco Translator - Weglot in the backoffice. Unlike the API key, languages are not configured in appsettings.json. They're stored in your site's database, in a table the package creates (ArjoWeglotLanguages). That means:
- Each Umbraco site (and each environment) keeps its own independent language list. Adding a language on UAT doesn't add it to production.
- Adding, editing or removing a language takes effect on the very next request, with no redeploy or restart.
- The table starts empty on a new install. Nothing is translated until you add a language.
The settings page
The page has three panels:
- Umbraco Translator shows your licence status. Its View Weglot logs button opens Umbraco's Log Viewer, pre-filtered to the search term
Weglot. - Weglot API Key shows whether a key is configured (masked, if so). It also has:
- a live status badge: green ("Weglot is up and running") if Weglot's service is reachable, red ("Weglot may be unavailable") if not. The check runs from your browser against Weglot's public status endpoint, not from your server.
- Login to your Weglot account, which opens your Weglot dashboard in a new tab.
- Languages lists your languages and lets you add, edit and remove them.
The languages table
| Column | Meaning |
|---|---|
| ISO code | The language code Weglot uses (e.g. fr, es, zh-tw). |
| URL prefix | The path segment that selects this language on your site, shown with its slash (e.g. /fr). |
| Name | The display name used in the language switcher. |
Each row has three actions:
- View opens your homepage in that language (e.g.
/fr/) in a new tab. It's a quick check after adding or editing a language. - Edit changes the URL prefix or display name. The ISO code can't be changed once a language is created; delete it and add it again if you need a different code.
- Delete removes the language after a confirmation prompt. It doesn't touch any Umbraco content. That URL prefix stops resolving and stops being offered in the switcher.
ISO code and URL prefix are independent
It's easy to assume a language's URL prefix always matches its ISO code, since for most languages you'll set them to the same value. They're separate fields, though. You could set up Catalan with ISO code ca but URL prefix catalan, and the site would serve it at /catalan/..., not /ca/....
Adding a language
Click + Add language. The ISO code field is a dropdown, not free text. It lists the languages Weglot supports, so you can't pick a code Weglot doesn't understand. Languages you've already added are left out.
Picking a code fills in Name with that language's English name (e.g. de fills in "German"). You can change this to something else if you would like.
Set a URL prefix and save.
Use native names in the switcher
The Name is what visitors see in the language switcher. Most sites list languages in their own language ("Deutsch", "Français", "Español") so a visitor can find theirs whatever language the page is currently in. Change the auto-filled English name to the native one.
Choosing a URL prefix
- Use lowercase letters, numbers and hyphens:
fr,de-ch,pt-br. - Make sure it doesn't clash with a top-level page on your site. If you have a page at
/fr/already, that page is served instead of the French translation. See A real page always wins.
Removing a language
Click Delete on the row and confirm. The URL prefix stops resolving on the next request (it returns a 404), and the language disappears from the language switcher. If search engines have indexed pages under that prefix, consider redirecting them.
URLs without a language prefix
If a request path's first segment doesn't match any configured URL prefix, the package does nothing and Umbraco routes the request as normal. An unprefixed path just means "the original language", never an error.