Skip to main content

Localization guide

The practical version of International. Read this when you are adding a language or translating the theme yourself.

File structure

Each file is a flat JSON object of key — string.

Key conventions

The accessibility namespace holds every aria-label in the theme. A merchant who translates the visible strings but not these ends up with a page where a screen-reader user hears English button names. It is the most commonly missed part of a translation.

Adding a language

1

Create the language in Shopify

Settings → Languages → Add language. Pick the language and the domain it will be served on.
2

Create the locale file

Copy locales/en.default.json to locales/<code>.json — for example locales/fr.json.
3

Translate every value

Keep the keys identical. Change only the values.
4

Push the theme

Shopify copies the theme’s locale files into the new language.
5

Copy the locale in the admin

Settings → Languages → your language — Actions → Copy from default theme. This picks up any keys added since the theme was first published.
6

Verify the language selector

It appears in the header automatically once the second language is published.

Using a translation in Liquid


Right-to-left languages

The theme’s layout uses logical CSS properties and flexbox, so RTL mirrors automatically. The header, the cart drawer and the mobile drawer all slide in from the correct edge.
Directional icons need an RTL variant. If you add a chevron that points “forward”, add .icon--rtl { transform: scaleX(-1); } and apply it inside an [dir="rtl"] selector.

Regional formats

Only the strings in locales/ are yours to translate. Formats are Shopify’s job, and they follow the storefront locale automatically.

Adding a language in code

If you deploy with the CLI, the flow is:
After every theme update, re-copy the locale in Settings → Languages. New keys added by the update are not present in your existing translated files, and they will silently fall back to English.

International

The feature overview.

Code reference

The full file map.