How translation works
Umbraco Translator doesn't create a second copy of your content. Each translated page is your normal page, rendered by Umbraco as usual and translated on the server to make sure the content being returned is in the requested language.
What gets translated
The translator parses the page as HTML so can intelligently understand what needs to be translated. It uses Weglot to translate:
- visible text, meaning every text node in the page, including
<title> <meta content="...">values, such as descriptions and Open Graph titles. The exceptions areog:url,og:type,twitter:cardandgoogletags.titleattributes on any elementaltattributes on images
What doesn't get translated
- Anything inside
<script>,<style>,<link>or<noscript>. This includes JSON-LD structured data. - Attributes other than
title,altand metacontent, such asplaceholder,aria-labeland formvalues - Text added in the browser by JavaScript after the page loads
- Anything marked with
data-wg-notranslate. See Excluding content. - The Umbraco backoffice, and static files such as images, CSS and JS
Your original content must be in English
Every page is sent to Weglot as English → target language. The source language isn't currently configurable, so a site whose original content is in another language will get poor or failed translations.
A real page always wins
Before translating a page, Umbraco Translator first checks whether a published page already exists at the full path. If you have a page whose URL is /fr/something, or a top-level page named the same as a language prefix, that page is served as-is and isn't translated.
Usually you won't notice this. It does let you hand-write a specific page for one language: create it at the prefixed URL and it takes precedence over the machine translation.
What happens if Weglot can't be reached or fails
If a translation call fails (for example, the API key is wrong, the Weglot plan's word limit has been reached, or Weglot is down), the visitor gets the original, untranslated page rather than an error. The failure is written to the log. See Checking the logs.