7.2.1 Advanced Tutorials — Multilingual Content Setup

This tutorial describes how to set up multilingual content in a structured and scalable way. It assumes familiarity with content types and focuses on configuring locales, translation groups, and locale-aware relations.

Step 1: Define Supported Locales

Configure the set of supported locales for the tenant. One locale is designated as the default.

Locale properties:

Language code

Optional regional variant

Text direction

The default locale is used for fallback behavior.

Step 2: Configure Content Type Localization

Enable localization on content types and select which fields are translatable.

Localization rules:

Translatable fields store per-locale values

Non-translatable fields are shared

Structural fields remain locale-neutral

Step 3: Translation Groups

Entries across locales are linked through translation groups. Each locale has at most one entry per group.

Group guarantees:

Stable cross-locale linkage

No duplicate locale entries

Predictable fallback resolution

Step 4: Locale-Aware Relations

Relations between content entries respect locale context.

Relation behavior:

Relations resolve within the active locale

Fallback only when explicitly allowed

No cross-locale leakage

Step 5: Editor Workflow

Editors can switch locales and manage translations from a single interface.

Workflow features:

Locale switcher

Translation status indicators

Per-locale validation

Step 6: Delivery and API Access

Public APIs expose localized content based on requested locale.

Delivery rules:

Explicit locale parameter

Fallback to default locale when configured

Locale-consistent relations

Example request:

GET /api/v1/entries/articles?locale=nl

Step 7: Validation and Consistency

The system enforces translation consistency.

Consistency checks:

Required fields per locale

One entry per locale per group

Safe deletion of locale variants

Best Practices

Plan localization early. Avoid retrofitting multilingual behavior after large volumes of content exist, as structural changes affect editors, APIs, and integrations.