Right-to-left languages

What happens on an Arabic, Hebrew, Persian or Urdu site, what the theme mirrors, and what you will need to adjust yourself.

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:

SettingFor an RTL site
Blog / post / page layoutSidebar left is the sidebar after the content
Stacked alignmentRight is the reading-start edge
Post header alignmentSame
Page title alignmentSame

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.

Last updated September 12, 2026

Something missing or out of date? Ask us and we will fix the page.