Naar hoofdinhoud
← Back to the blog

Making your WooCommerce store accessible: a practical guide

9 juni 2026

Short answer. WooCommerce itself follows the WordPress accessibility guidelines reasonably well, but your store mainly inherits the accessibility of your theme, your plugins and your content — and that is usually where it goes wrong. Walk the six points below (contrast, alt text, headings, plugins & page builders, keyboard, language) and pay extra attention to your block checkout and your product filters; that covers the bulk of it.

Why isn't WooCommerce enough on its own?

WooCommerce is a plugin on top of WordPress. Whether your store meets WCAG depends on how your theme is built, which colours you chose, which plugins and page builder you use, and how you filled in your products. Two stores on the same WooCommerce version can therefore score completely differently. The good news: because much of it comes back through your theme and templates, a single fix often covers hundreds of pages.

1. Check your colour contrast

The most common issue. On a block theme (Full Site Editing) go to Appearance → Editor → Styles → Colors; on a classic theme go to Appearance → Customize → Colors. Make sure text and background have at least 4.5:1 contrast (3:1 for large text). Pay special attention to the text on your Add to cart button, price and sale labels, and links. Set it once and it applies store-wide. See colour contrast: the WCAG requirement and how to measure it.

2. Give your product photos alt text

Open a product under Products, click the Product image (and Product gallery) → fill in the Alternative Text field in the media library. Describe briefly and factually what is shown (e.g. "Black suede men's lace-up shoe"), no marketing language. Start with your best-selling products and your homepage banners. Decorative images get an empty alt (alt=""). More in writing alt text that works.

3. Check your heading structure

Use headings in logical order (H1 → H2 → H3) and not just for styling. In the block editor (Gutenberg) each heading block shows its level; don't skip levels. Watch out for page builders like Elementor or Divi: they let you style any text to look big without it being a real heading — choose the correct heading level deliberately there.

4. Watch your plugins and page builder

This is often the biggest source of problems. Plugins for reviews, chat, pop-ups, sliders and filters — and heavy page builders — inject their own code into your theme, and it regularly contains unnamed buttons, incorrect ARIA, or elements you can't operate with the keyboard. So don't install every plugin blindly, and always test your site with everything active. If a plugin turns out to be inaccessible, move to an alternative that does respect the WCAG standards. Where you can, choose the new WooCommerce blocks for cart and checkout (see point 6).

5. Test with the keyboard

Try using your site entirely without a mouse: just the Tab key and Enter. Can you reach everything — menu, product filters, variation choices, cart, checkout — and can you always see where the focus is? With WooCommerce, pay specific attention to the variation dropdowns, the quantity stepper (+/) and the filter widgets in your sidebar; those are the places where the keyboard often gets stuck.

6. Check your language setting and your checkout

Make sure your theme sets the correct language attribute, so a screen reader picks the right pronunciation. In a classic theme, header.php contains the line <html <?php language_attributes(); ?>> — that should carry the language attribute. If you use WPML or Polylang for multiple languages, check that each language version gets the correct lang attribute. Preferably move to WooCommerce's block-based Cart and Checkout blocks: they are more accessible than the old shortcode checkout and are actively maintained for accessibility.

Common WooCommerce mistakes and their fix

WooCommerce elementCommon mistakeThe fix
"Add to cart" buttonfont too light / low contrastset contrast in theme styles to at least 4.5:1
Product photosfilename as description (IMG_2043.jpg)add functional alt text in the media library
Quantity stepper (+/)unlabelled buttons, not keyboard-operableadd a label/aria-label or use an accessible variant
Product filter widgetfilters usable with the mouse onlyaccessible filter plugin or the WooCommerce filter blocks
Accessibility plugininstalling an overlay widgetavoid — it doesn't repair your code and doesn't protect against claims

Does an accessibility plugin from the WordPress plugin directory help?

No. Search for "accessibility" and you'll find dozens of plugins promising to make your store compliant in one click via a widget. Don't fall for it: they don't repair your theme and templates, and regulators check the raw source code of your store. Fixing it structurally in your theme and content is the only route that holds up — and it earns you better SEO and a faster load time too. More on this in why an accessibility overlay won't protect you.

Does that make my WooCommerce store compliant with the law?

These six points cover most of what an automated test detects, but "compliant" goes further: it depends on your whole theme, your plugins and your content together. Whether the European Accessibility Act applies to you is explained in our checklist. Also run a Shopify store? Then our Shopify guide will help you further.

How do I find out where my WooCommerce store stands now?

The fastest way: scan one page for free. You'll see, per finding, what's wrong and how to fix it — and because much of it runs through your theme and templates, you often fix it for your whole store in one go. In under 60 seconds, no account needed.