Lumadro Accessibility Ledger finds specific WCAG 2.1 AA failures, helps you fix
them in your actual content, and writes every step into an append-only ledger
you can export: each finding with the success criterion it fails, each change
with its before and after, the date, who approved it, and where the text came from.
The European Accessibility Act has applied since 28 June 2025 to many products
and services sold to consumers in the EU, online shops among them. Its technical
reference is WCAG 2.1 level AA. When someone asks what you have done about
accessibility, the answer should be a document, not a feeling.
It does not make your site legally compliant, and no plugin can. It is
not an overlay: it adds nothing to the front end and changes the underlying
content, not what visitors see at runtime.
The ledger
- Every accepted change is recorded with the date, the text before and after,
who approved it, and where the text came from: the AI provider that drafted
it, the image's existing media library alt text, or a person.
- Append-only: an undo is added as a new entry; nothing is erased.
- When a later scan no longer finds a problem, the ledger records it as "no
longer detected", never as proof of a fix: the content may simply have changed.
- A downloadable report lists open findings by success criterion and page,
counts confirmed failures apart from items for a person to review, and
includes the change log and what the checks did not cover. It never says the
site is conformant, accessible or compliant.
How it finds problems
Site scan. Reads every published post, page and library image in the
background, and loads each published page once to check what the theme adds:
- Images with no alt attribute, and alt text that is really a file name
- Links and buttons with no accessible name, including icon-only ones
- Form fields with no label, and frames with no title
- Headings that skip a level, and pages with no h1
- A missing or malformed page language, and missing or placeholder page titles
- Data tables with no header cells, and positive tabindex values
Browser check. Loads your pages in your own browser tab and runs the open
source axe-core engine: computed colour contrast, and content JavaScript builds
after loading, such as a block checkout. It then probes sideways scrolling at
320 pixels wide, elements with no visible change on focus, clickable elements a
keyboard cannot reach, and content opened on focus that Escape does not close.
These are listed for review, never as proven failures. Each run starts with the
home and shop pages, then pages never checked, so repeated runs cover the site.
How it fixes them
AI drafts alt text using your own provider key through WordPress core's AI
Client: no credits and no per-fix charges; you pay your provider directly.
Scanning, the browser check and the reports need no AI at all.
A library image's alt text is used wherever it is placed from then on. An image
already placed in a post is fixed in that post, with a normal post revision.
Nothing changes without you
- A draft is only a draft until you accept it, and you can edit it first.
- Text a person wrote is never replaced silently. Replacing it needs a
deliberate tick on that item. In a post, an image someone marked decorative
(alt="") counts as a person's decision too.
- Every change can be undone. If someone has edited the text since, the undo
refuses rather than discarding their edit.
Lumadro Accessibility Ledger Pro
The free plugin is complete for fixing and recording work one item at a time.
Pro, a separate paid plugin, adds bulk accept and reject (still never replacing
text a person wrote), scheduled re-scans with a dated history, JSON and CSV
exports, a drafted accessibility statement, a multisite network overview and a
portfolio of your separate sites.
How much of WCAG this covers
The site scan checks 10 of the 50 WCAG 2.1 level A and AA success criteria; the
browser check partly checks a few more on the pages it loads. The rest need a
person, and the plugin names every one on its "Coverage and limits" screen and
in every report. Passing the automated checks does not mean your site conforms.