Arabic RTL WooCommerce architecture: decide first
An Arabic RTL WooCommerce store is more than a translated English store. Arabic reads right to left (RTL), so layout, forms, emails, invoices and even icons have to flip, and the decisions you make in the first week decide how much rework you face later.
The first decision is the architecture. You can run one bilingual store with a multilingual plugin such as WPML or Polylang, where each language gets its own URLs and WordPress treats Arabic pages as right to left. Or you can run separate sites per language. One bilingual store is easier to maintain and shares products, stock and orders, so it suits most Gulf businesses. Separate sites suit teams with very different catalogues or markets per language. I have built Arabic and bilingual WooCommerce stores, and this is the checklist I work through before launch.
Arabic RTL WooCommerce theme and layout
- Use a theme that ships real RTL support, not just a flipped stylesheet. Check the header, menus, product grid, cart, checkout and account pages in RTL.
- WordPress loads RTL styles for RTL languages, and WooCommerce ships RTL stylesheets. Custom CSS is where things break, so look for hard-coded
leftandright. Where you can, use logical properties such asmargin-inline-start. - Mirror directional icons, such as arrows, back buttons and carousel controls. Do not mirror logos, clocks or play buttons.
- Check sliders and carousels, which often assume left-to-right movement.
- Mixed content causes trouble. English brand names, numbers, URLs and email addresses inside Arabic text can display in the wrong order, so test them and use
dir="auto"or<bdi>where needed.
Fonts and speed on an Arabic RTL WooCommerce store
Arabic web fonts are heavy, and they are the quickest way to hurt Core Web Vitals on an Arabic store.
- Choose a font designed for screens. IBM Plex Sans Arabic, Noto Kufi Arabic, Cairo and Tajawal are common choices.
- Load as few weights as you can. Two weights are usually enough.
- Subset the font to the characters you need, serve it from your own domain, and use
font-display: swap. - Preload only the weight used above the fold.
- Test on a throttled phone, not a fast desktop. If the font is hurting your score, see my WordPress performance optimization service.
Arabic RTL WooCommerce checkout and forms
- Names. Accept Arabic characters in every name and address field. Validation that only allows Latin letters will reject real customers.
- Phone numbers. Support the country codes you sell to, and check that numbers display left to right inside an RTL form.
- Addresses. Address formats vary by Gulf country, and many addresses do not use postcodes the way Western ones do. Make the fields fit how your customers actually write them.
- Error messages. Check every validation and error message in Arabic, not only the labels.
- The payment page. Gateways usually host the payment page. Check whether yours can show Arabic and RTL, and pass the language where it allows. See my guide to WooCommerce payment gateways for the Gulf.
- Numerals. Decide whether you show Western digits or Eastern Arabic digits, and be consistent in prices, phone numbers and dates.
Emails, PDF invoices and documents
- WooCommerce’s own email templates adjust alignment for RTL languages. Any custom or plugin-added email needs checking one by one.
- PDF invoices are the classic failure. Many PDF libraries do not shape or order Arabic correctly by default. The popular PDF Invoices and Packing Slips plugin has an mPDF add-on for RTL and Unicode support, and WebToffee publishes a guide to RTL invoices. Test with real Arabic names and long addresses.
- If you sell in Saudi Arabia, invoices also have to meet e-invoicing rules. See my guide to ZATCA e-invoicing for WooCommerce.
Search, URLs and language tags
- Put each language on its own URL, such as
/ar/and/en/, and link the versions to each other with hreflang tags so search engines know which is which. Mark pages with the rightlanganddirattributes. - Do not redirect visitors by IP address alone. Let people choose a language, and remember their choice.
- Arabic URLs can use Arabic characters or transliterated slugs. Pick one approach and use it consistently.
- Store search needs attention. Arabic has letter variants and optional diacritics, so a shopper who types one spelling may not match a product saved with another. Test your search with common spellings, and use a search tool that normalises them.
Content and translation quality
Machine translation is fine for a first draft but rarely good enough for product pages, where tone, units and local terms matter. Have a native speaker review titles, descriptions, category names and policy pages, and write Arabic titles and meta descriptions for search, not copies of the English ones.
Arabic RTL WooCommerce pre-launch checklist
- Test every key page in RTL on real iPhone and Android devices.
- Check mixed Arabic and English content, numbers and URLs.
- Complete a full order in Arabic, including payment, confirmation page and every email.
- Generate a PDF invoice with Arabic names and addresses.
- Test search with several spellings.
- Check hreflang,
langanddiron each page. - Measure Core Web Vitals on a phone, with fonts loaded.
- Test the language switcher from every page type.
Frequently asked questions
Do I need a special theme for an Arabic RTL WooCommerce store?
You need a theme with genuine RTL support. A theme can claim it and still break in the cart or checkout, so test those pages before you commit.
Should I use one bilingual site or two sites?
One bilingual site with a multilingual plugin suits most stores, because products, stock and orders are shared. Separate sites make sense when the catalogue or market differs a lot between languages.
Why do my Arabic PDF invoices look broken?
The PDF library often cannot shape or order Arabic text correctly. Use a plugin or add-on with RTL and Unicode support, and test with real customer data.
Do Arabic fonts slow my store down?
They can, because Arabic fonts are large. Use few weights, subset the font, host it yourself and use font-display: swap.
Does the payment page also need to be in Arabic?
Ideally yes. Many gateways let you pass the language to their hosted page. Check what yours supports.
Need an Arabic RTL WooCommerce store?
See my WooCommerce developer and WordPress development services, or tell me about your project.