Skip to main content
Tutorial

WooCommerce Arabic RTL Setup: The Complete Guide for UAE Stores

6 min read

A no-BS guide to fixing WooCommerce’s Arabic RTL issues for UAE stores by a bilingual developer.

WooCommerce setupArabic e-commerceRTL themesUAE online storesSarah Nasereldeen

Last year, a client asked me to translate a UAE-based WooCommerce store into Arabic. Simple, right? I clicked through the settings, generated some language files, and called it a day. Six hours later, I was debugging text alignment issues on category pages that still looked broken because the cart icon had jumped to the left, the checkout buttons overlapped in mobile view, and the menu collapsed into a mess only a front-end developer could hate. That’s when I realized: WooCommerce doesn’t handle Arabic RTL (right-to-left) the same way it handles English. Not even close.

Why Default WooCommerce Arabic Support Falls Short

WooCommerce’s language switcher isn’t designed for RTL languages. It translates strings but ignores layout direction. The result? You’ll see English-style left-aligned text mixed with Arabic headers that flow right-to-left. I once spent two days hunting down why product tabs in a UAE store looked like a CSS warzone until I traced it to unprocessed RTL styles in WooCommerce’s core files.

To fix this, you need two things:

  1. A translation solution that respects RTL scripts (spoiler: NOT the default WooCommerce language plugins).
  2. A theme or custom CSS that handles direction:rtl without breaking grids or flexboxes.

The deeper problem? Most translation plugins focus on words, not layout. If your client runs a store selling abayas or dates in Dubai, they won’t care about technical debt — they’ll care that their checkout page looks like a puzzle.

Setting Up Arabic RTL Without Breaking Your Budget or Brain

Let’s get practical. Here’s what I use in 2026:

Step 1: Translate with Loco Translate + Manual Overwrite

Loco Translate builds PO/MO files directly in your theme. Pair that with Theme and Plugin RTL (a plugin I’ve used since 2023) to force RTL direction for Arabic. But don’t trust the interface alone — I’ve seen it miss strings in checkout buttons. Export the PO file, run it through Poedit’s Arabic validation, then re-upload.

Step 2: Pick a Theme That Actually Supports RTL

Astra and Kadence both ship with RTL stylesheets as of 2024. But if you’re working with a client on a budget, don’t recommend Divi — its RTL support is so buggy I’ve sworn off it. A client once asked me to fix a logistics company’s site in Sharjah where the admin menu broke completely in Arabic mode because Divi’s developers hadn’t even tested their latest release with RTL.

Step 3: Fix WooCommerce’s Layout Blind Spots

WooCommerce’s HTML for product loops and cart tables assumes English. You can’t just flip it — you’ll get prices on the wrong side, overlapping text on the mobile cart, or filters that jump to the left. Here’s what I did for Reach Home Properties’ real estate portal (which sells in both languages):

  • Overwrite woocommerce/templates/loop/price.php to wrap tags in a
    with text-align: right.
  • Manually add !important to RTL menu items in the dashboard (admin-menu.css) — WooCommerce’s default admin menu gets disoriented in RTL.
  • Use rtlcss (a PostCSS plugin) to automatically convert LTR styles to RTL. But only for layout modules, not typography.

For Greeny Corner’s plant app, I even wrote a PostCSS config that swapped .left classes to .right in the build process. It saved 5+ hours per release.

Why Your Client Doesn’t Care About Your Tech Stack

In 2023, I built a WooCommerce site for a Dubai spices seller. They wanted Arabic translations and a clean layout for mobile users in Al Ain. They didn’t care that I used Laravel’s mix with webpack 5 to automate RTL conversion — they cared that their customers could search "زعفران" and not see a broken page.

This is where you earn your hourly rate. You’ll spend half your time explaining that Google Fonts’ "Cairo" (not a typo) is better for Arabic scripts than system fonts. You’ll demo the site in Safari, Chrome, and Edge for Android — yes, someone in Ras Al Khaimah might open your store in a PWA or Opera Mini, and the alignment must hold.

Performance Pitfalls in Arabic WooCommerce Stores

Here’s what broke on me:

  • A translated site with 12 inactive language plugins. The client installed every "Arabic site" plugin they found until the checkout page loaded 3.5 seconds slower.
  • Unminified CSS files generated by Theme & Plugin RTL. I switched to building compressed RTL styles via wp-rtlcss, cutting 10% off load time.
  • Using Google Fonts’ Roboto Arabic on every page. For one Abu Dhabi retailer, replacing this with a locally hosted font dropped Cumulative Layout Shift from 0.3 to 0.1.

Test with Lighthouse’s RTL preset (run npm install -g lighthouse && lighthouse --preset=rtl). It finds issues that look fine in Chrome DevTools but mess up on RTL-first browsers like Samsung Internet.

Lessons From Building Tawasul Limo’s Bilingual Store

Back in 2022, I helped build a luxury limo booking site for UAE tourists. The client wanted Arabic for locals and English for expats. Here’s what tripped me up:

  • Currencies in RTL mode pushed the AED symbol to the left of numbers (like AED 2500 instead of 2500 AED). We fixed this by editing class-wc-locale.php to reverse currency position for ar.
  • Search filters that used jQueryUI’s datepicker — the popup stuck to the right edge of the screen in Arabic. We replaced it with Flatpickr (which respects body dir attributes).
  • Product variations breaking when translated. WooCommerce doesn't merge attribute terms by language ID. We migrated from Polylang to Weglot’s API to sync variations across both languages.

This project taught me to never assume language plugins behave well. Always test currency, dropdowns, and dates in RTL — not just in a browser, but in a real device.

Frequently Asked Questions

Can I use WooCommerce Multilingual to set up Arabic?

WooCommerce Multilingual (by WPML) works but not out of the box. You’ll need to manually set the text_direction field to "rtl" in your Arabic site options. Also, expect to adjust CSS for tables, buttons, and forms — the layout won’t flip automatically.

What’s the cheapest way to build a bilingual WooCommerce site in UAE?

Loco Translate + Loco Translate RTL plugin. It’s free, but you’ll need basic PHP knowledge. Avoid plugins that charge per string — for a 100-product store in Abu Dhabi, costs can spiral from $50/month to $300+ if you’re not careful.

Do all WooCommerce themes support Arabic?

No. Themes like Astra and Kadence work if you use their 2026+ RTL releases. But older versions (pre-2023) and niche themes like Sargento (a food blog theme) have broken RTL support. Test with the RTL Tester plugin before onboarding a client.

Why is text overlapping in the checkout for my Arabic WooCommerce store?

Check two things:

  1. The theme’s CSS file doesn’t have direction: rtl in the body class.
  2. The payment gateway hasn’t hardcoded text alignment. Stripe’s official plugin had issues until late 2025 — I fixed this by wrapping their form in a div with style="direction: rtl" and using !important on conflicting selectors.

Let’s Fix Your WooCommerce Arabic Site

If you’re working on a UAE store and want to avoid my 6-hour nightmare, book a free consultation or get in touch. Between building React Native apps for Tawasul Limo and optimizing Arabic WooCommerce shops for Dubai retailers, I’ve picked up fixes that save time and keep Google Fonts from crashing your site.

S

Sarah

Senior Full-Stack Developer & PMP-Certified Project Lead — Abu Dhabi, UAE

7+ years building web applications for UAE & GCC businesses. Specialising in Laravel, Next.js, and Arabic RTL development.

Work with Sarah