Skip to content

Free trials of CMS Orbit open in

Guides

How to run one website across several countries and languages

A practical guide to regions, languages, address prefixes, linked copies and machine translation in CMS Orbit, with a retailer's German and Swiss websites as the example.

Bifröst Orbit team

4 min read

On this page

Running one website in several countries sounds simple until you try it. Prices differ. So do opening hours, regulations and the claims you're allowed to make. Some countries need two languages. And every copy of a page needs to stay in step with the others, except where it mustn't.

This guide shows how CMS Orbit handles it, using a retailer as an example: shops in Germany and Switzerland, one website at example.com.

Start with regions, then languages

In CMS Orbit, a region is a country or market the website serves. Each region has:

  • A key and a short code: Such as switzerland and ch, used by the API and by webhooks.
  • An address prefix: Such as /ch, when several regions share one domain.
  • A time zone and a currency: Such as Zurich time and the Swiss franc.
  • Its own languages: One of them the default, each with an optional fallback language.
  • Its own pages: A page in Germany is a different page from its copy in Switzerland, even at the same address.

The retailer sets up two regions. Germany has German (de-DE) as its default and English (en-DE) as a second language. Switzerland has German (de-CH) and French (fr-CH).

Regions start in Orbit, where your organisation's admins add them with a name and a time zone. In CMS Orbit you set up the same regions for each website under Configuration › Environments, with the same key, so when someone picks a region at the top of Orbit, CMS Orbit shows the matching one.

Choose an address pattern

CMS Orbit keeps the content apart. Your website decides how visitors reach each region. The common patterns are:

PatternExample
One region, several languagesexample.com/fr/products
Several regions on one domainexample.com/ch/products
Regions and languages on one domainexample.com/ch/fr/products
A domain per regionexample.de/products and example.ch/products

Set the same prefixes on the regions and the same domains under Configuration › Domains. CMS Orbit then builds the right canonical links, hreflang tags and a sitemap for each region and language. The developer guide to regions and languages shows the folders for each pattern in Next.js.

Copy pages between regions

The retailer writes its Hiking boots page for Germany first. To bring it to Switzerland, an editor chooses Copy to, picks the region and language, and decides whether to copy the images too. The copy arrives as a draft, linked to its source.

  • Regional values stay put: Fields marked as regional, such as a price or a shop, keep the copy's own value when it's updated from the source. The German page shows prices in euro and the Swiss page in francs.
  • Claims follow the region: Approved claims are placed by key, so each region shows its own approved wording.
  • Updates arrive when you're ready: When the source changes, the copy says it's behind. Update from source brings the changes in and leaves regional values as they are.

See copy a page to another region or language for the steps.

Translate with a person in the loop

In a website with more than one language, text fields offer a translation suggestion in the page's language, from DeepL. It's a starting point: an editor always reads it before using it. Administrators can switch the suggestion off for the whole website.

Each plan includes machine translation each month, counted across the organisation: 50,000 characters on Starter, 500,000 on Growth and no limit on Enterprise. The suggestion shows how much is used, and the count starts again on the 1st of the month.

Decide what happens when a page is missing

Not every page exists in every language or region. The website's settings decide what visitors get:

  • A missing language: With locale fallback on, the website can show the page in the fallback language, such as German when the French page isn't ready.
  • A missing region: The website can answer not found, or show another region's page instead.

Either way, the website is told what happened, so it can show a notice such as 'This page is not available in French yet'. For content where another language would be wrong, such as legal terms, the website can ask for an exact match and refuse the fallback.

Give people the regions they work in

The German marketing team shouldn't change Swiss pages by accident. Access in CMS Orbit can be limited to regions: someone limited to Germany can read every region but only change Germany. On Growth and Enterprise, approval steps can be set per region too, so Swiss pages go to a Swiss reviewer.

What each plan includes

Orbit itself has no limit on regions. CMS Orbit's plan sets how many regions its websites can use: 1 on Starter, 5 on Growth and no limit on Enterprise. A region used by several websites counts once. See pricing for the full comparison.

A checklist for your first region

  1. Add the region in Orbit, with its name and time zone.
  2. Add it to the website in CMS Orbit with the same key, its prefix and its languages.
  3. Set its domain under Configuration › Domains.
  4. Mark fields that differ by region, such as prices, as regional.
  5. Copy your key pages across, translate and adapt them, and publish.

Want to see it with your own regions? Start a 14-day free trial, or talk to us about your setup.

See it with your own team.

Orbit is free. Try CMS Orbit for 14 days with your own content, no card needed, or ask us anything.

Talk to us

Read next

Guides

2 min read

Live preview for your website in four steps

Show editors their draft on the real website, updating as they type. Here are the four small pieces your website needs, and what each one does.