Guide9 min read

WordPress accessibility: the theme, plugin, and editor issues that fail WCAG 2.2 AA

WordPress is an unusually good starting point for accessibility and an unusually easy place to lose it. The project's own coding standards require new and updated core code to conform to WCAG 2.2 AA, and the admin and bundled themes are built to that target. None of that carries over to the theme you bought, the eleven plugins you installed, or the way your marketing team builds pages.

This is where WordPress sites actually fail, in the order we tend to find it.

What core gives you, and what it does not

WordPress states that all new and updated code released in WordPress must conform with WCAG 2.2 AA under its accessibility coding standards, and that the WordPress admin and bundled themes aim to be fully compliant at that level where possible. That covers the editing experience and the default themes.

It does not cover third-party themes or plugins, and WordPress says so directly: the project cannot guarantee that all themes are compliant. Since a typical site runs a commercial theme and a dozen plugins, most of the front end a visitor receives is outside the guarantee.

What the accessibility-ready tag actually means

Themes in the WordPress.org directory can carry an accessibility-ready tag, which means a reviewer checked them against the Theme Review Team's accessibility guidelines. It is a meaningful signal and it is worth preferring a tagged theme over an untagged one.

It is not a conformance claim. The review handbook is explicit that accessibility-ready does not mean the theme meets WCAG AA — it means the theme reaches the minimum standards the review team set. Treat it as a floor on the theme's own markup, not a verdict on the site you build with it.

Theme-level failures

Plugin-level failures

Plugins inject markup you did not write into pages you are responsible for. The recurring offenders are form builders, cookie and consent banners, popup and email-capture plugins, page builders, and any plugin that renders a modal.

Editor and content failures

The block editor will happily let an author build an inaccessible page out of accessible blocks. These are the patterns to train out, and they are worth putting in a one-page editorial standard rather than fixing repeatedly.

How to audit a WordPress site

  1. Scan the front end first, across templates rather than one page. You want the home page, an archive, a single post, a page built by the page builder, and any form or checkout.
  2. Fix in the theme, not the page. Almost every finding above lives in a template or a stylesheet, so one change clears it everywhere.
  3. Deactivate plugins one at a time on a staging copy and re-scan. This is the fastest way to attribute an injected failure to the plugin that caused it.
  4. Walk the site with the keyboard only. Menus, search, forms, popups, consent banner. Automated tools cannot tell you whether the focus order made sense.
  5. Re-scan after every theme or plugin update. WordPress sites regress through updates more than through edits, and a fixed issue returning is the failure mode nobody watches for.

Where AdaChecked fits

The AdaChecked Site Scanner scans any public site regardless of stack, so a WordPress site needs no plugin installed and no code change to be audited — the scan runs on our infrastructure against the pages your visitors actually receive, which is the only way to see what your theme and plugins combine to produce. Issues come back mapped to the WCAG 2.2 criterion they fail, with how-to-fix guidance, and monitoring re-scans catch the regressions that arrive with updates.

Scheduled scans matter more on WordPress than on most stacks: plugin and theme updates ship on their own cadence, and a fixed issue returning after an update is the failure mode nobody is watching for. Monitoring turns that into an email rather than a discovery.

AdaChecked provides accessibility scanning and documentation. It does not provide legal advice, and no scan or report guarantees compliance or litigation outcomes. For legal questions, talk to your attorney.

← All posts