Right-to-left languages
Set Settings → General → Site Language to an RTL locale — Arabic, Hebrew,
Persian, Urdu — and WordPress puts dir="rtl" on the document.
Be aware of what that does and does not give you. The theme’s own strings translate cleanly and the text direction is correct, but the theme does not ship a mirrored stylesheet, so parts of the layout keep their left-to-right arrangement. Plan for a small amount of CSS of your own.
What works out of the box
- Text direction and alignment. Paragraphs, headings, lists and blockquotes
run right to left; the browser handles this from
dir="rtl". - Theme strings, once translated — see Translating the theme.
- Pagination arrows swap direction, so Newer and Older point in reading order. See Pagination.
- The calendar widget’s navigation arrows do the same.
- The admin and the block editor, which are core’s responsibility and fully RTL-aware.
What you should check, and probably adjust
The stylesheet is written with physical left / right properties, so anything
positioned rather than flowed keeps its side:
- The header bar — where the logo, menu and action group land. Logo center is the most direction-neutral of the three layouts and is worth trying first.
- The list display, where the image leads the row.
- Spacing around icons and meta items, which uses one-sided margins.
- The scroll to top button’s corner.
A modest block of CSS under an html[dir="rtl"] prefix covers most of it. See
Custom CSS for where to put it, or
Create a child theme if it grows past a
handful of rules.
Settings that are named for physical sides
These say left and right, and they mean the physical left and right — not “start” and “end”. On an RTL site you generally want the opposite of what you would pick for English:
| Setting | For an RTL site |
|---|---|
| Blog / post / page layout | Sidebar left is the sidebar after the content |
| Stacked alignment | Right is the reading-start edge |
| Post header alignment | Same |
| Page title alignment | Same |
Fonts
The nine built-in stacks are Latin-focused. Leave the face on System default, which resolves to a font the device actually has for your script.
If you want a specific typeface, install it through the Font Library and check that it covers your script — a Latin-only webfont falls back silently for every Arabic or Hebrew character, giving you two typefaces in one paragraph.
Reporting problems
If you are running the theme in an RTL locale, specific reports are genuinely useful — a screenshot and the element that is on the wrong side is enough to get it fixed. See Support.