For the complete documentation index, see llms.txt. This page is also available as Markdown.

Right-to-left and non-Latin text

Right-to-left layout for Arabic and Hebrew storefronts, and what to watch with non-Latin scripts.

The widget supports right-to-left layout and non-Latin scripts. A few settings need attention that a Latin-script store does not have to consider.

Right-to-left layout

The widget's alignment setting includes a right-to-left option.

Settings > Settings > General > Widget Settings > Alignment > Right to left

This lays out the widget for right-to-left reading. Labels, fields, help text, and swatch rows all flow from right to left.

Alignment
Use for

Left

Left-to-right languages. The default

Center

A centered design, in either direction

Right

Right-aligned text without changing reading direction

Right to left

Arabic, Hebrew, and other right-to-left storefronts

See Widget behavior.

Fonts and scripts

The widget's typography is set store-wide in Settings > Design > Typography. Check that the font you select includes your script.

Check
Why

The chosen font includes your script

Many otherwise excellent fonts have no Arabic, Hebrew, Thai, or CJK glyphs. Missing glyphs fall back to a system font, which looks inconsistent

Font size suits the script

CJK and Arabic often need a slightly larger size than Latin at the same nominal value to be equally legible

Bold and italic exist

Many non-Latin fonts have no italic at all, and a faked slant looks wrong

See Borders and typography.

The Personalizer

The Personalizer needs the most attention, because the preview draws the text itself.

Setting
What to watch

The font must contain your script. Test with real customer names, not placeholder text

Connected scripts such as Arabic do not bend the way separated letterforms do. Check the result carefully before using curve with Arabic

Worth turning on. Character widths vary far more across scripts than within Latin

A character limit means different physical widths in different scripts. Set it for the script your customers use, or use auto-fit as the real constraint

Check by eye per script rather than reusing a value that worked for Latin

If you offer personalization in several scripts, create a separate option set for each language group and target it with country rules, so each one has its own font and limits.

Input rules

Setting
Behavior with non-Latin text

Letters means letters, not Latin letters. It does not restrict a customer to the Latin alphabet

Case has no meaning in scripts without upper and lower case, so these settings do nothing there

Count characters, so one CJK character counts as one — even though it occupies more width than a Latin one

The date picker

The calendar has its own language setting, separate from everything else on this page. It supports more than fifty languages, including Arabic, Hebrew, Thai, and several CJK languages.

Other language and Localization on the option's Advanced tab. See Date and time picker.

A checklist for a right-to-left store

1

Set Alignment to Right to left

Settings > Settings > General.

2

Choose a font that includes your script

Settings > Design > Typography. If none of the built-in fonts covers your script, upload a custom font.

3

Translate the widget text

Settings > Translations. See Translate widget text.

4

Translate your option content

In the builder, per option set. See Translate option content.

5

Set the calendar language on any date option

Per option, on its Advanced tab.

6

Test a full product page on your storefront

Check a validation error, a swatch row, and any personalization preview.

Last updated

Was this helpful?