WP Manifestindependent plugin directory
manifest / utilities / sitecraft-accessibility

Sitecraft Accessibility

Accessibility Plugin for Wordpress

by Sitecraft · github.com/seldrickd/sitecraft-accessibility · website

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/seldrickd/sitecraft-accessibility/archive/refs/heads/main.zip

A WordPress accessibility plugin that audits content against WCAG 2.1 AA and WCAG 2.2, fixes a specific set of markup problems on the server, and generates a publishable accessibility statement.

It is part of the Sitecraft suite, five plugins built to one engineering contract.


Why this is not an overlay

This is the most important thing to understand about the plugin, so it goes first.

An accessibility overlay is a JavaScript bundle that promises conformance by rewriting a page in the browser. The promise does not hold up:

  • The European Commission does not treat overlay-based approaches as a route to EN 301 549 conformance. Conformance is a property of the delivered content.
  • In April 2025 the US Federal Trade Commission approved a final order against accessiBe concerning its accessibility claims.
  • Screen-reader users report, consistently and publicly, that overlays interfere with the assistive technology they already run. An overlay that fights a user's own software has made the site less usable, not more.

So this plugin does not paint over the page. It does three defensible things:

What it does Why it is defensible
Audit Parses content with DOMDocument and reports failures with the WCAG criterion cited It tells a human what to fix rather than claiming to have fixed it
Remediate Emits real markup and CSS server-side: skip link, landmarks, lang, focus ring, reduced motion, target size The HTML the browser receives is genuinely better
Document Generates the accessibility statement the EAA expects, including known limitations Honesty about limitations is a defensible legal position; an unsupported claim is not

There is an optional reading preference panel. It is off by default, it is described to visitors as a convenience, and it carries a footnote saying so. It is not a conformance mechanism and the plugin never presents it as one.

Automated testing finds a minority of WCAG failures. No scanner knows whether your alt text is accurate or whether a keyboard user can finish your checkout. A clean report means the rules found nothing, not that the site is accessible.


Features

Audit engine

Fifteen rules, each a class implementing a Rule interface with id(), title(), criterion(), level(), severity(), how_to_fix() and evaluate( DOMXPath $xpath, DOMDocument $doc ): array.

Rule id Criterion Catches
img-alt-missing 1.1.1 A <img> with no alt attribute at all
img-alt-filename 1.1.1 A Alt text that is only a filename, e.g. IMG_2043.jpg
link-empty 2.4.4 A <a> with no accessible name
link-generic-text 2.4.4 A "click here", "read more", "more", "link"
link-raw-url 2.4.4 A Link text that is a bare URL
heading-order-skip 1.3.1 A Heading level jumping by more than one
heading-empty 1.3.1 A Heading element with no text content
table-no-header 1.3.1 A Data table with no <th> and no scope
table-layout 1.3.1 A Multi-column table with no headers and no presentation role
iframe-no-title 4.1.2 A `