LivQ AccessFix – EAA & A11y AutoFix Wordpress Plugin - Rating, Reviews, Demo & Download
Plugin Description
LivQ AccessFix – EAA & A11y AutoFix applies WCAG 2.2 AA and European Accessibility Act (EAA) remediations automatically, intercepting the full rendered HTML via PHP output buffering before it reaches the browser – not after, not via JavaScript overlay.
Every module can be independently enabled or disabled from Settings LivQ AccessFix.
Why server-side matters
JS-based accessibility overlays (widgets, injected scripts) patch the DOM after the browser renders it. The original HTML – the one Google indexes, axe-core audits, and screen readers without JS see – remains unmodified. LivQ AccessFix fixes the source HTML itself, so the correction is real, not cosmetic.
Frontend Modules
External Link Labelling (WCAG 2.4.4)
Intercepts the entire rendered page via PHP output buffer and appends a visually-hidden screen-reader notice to every <a target="_blank"> link. Also merges rel="noopener noreferrer" into existing rel values to prevent reverse tab-napping. Covers links generated by theme PHP, social share plugins, widget areas – not just the_content.
Skip Navigation Link (WCAG 2.4.1)
Injects a skip link as the first focusable element after <body> via wp_body_open. Target ID is configurable and auto-detectable from the admin. Visually hidden until focused.
Decorative Image Alt Fix (WCAG 1.1.1)
Ensures images without meaningful alt text carry an explicit alt="" via wp_get_attachment_image_attributes. Also hooks render_block_core/image to fix images in Full Site Editor templates and block themes where the attachment filter does not fire.
High-Contrast Focus CSS (WCAG 2.4.11)
Injects a focus-visible rule (3 px solid #0056b3 + glow) as inline CSS, overriding common theme patterns of outline: none without modifying any theme file.
Menu Accessibility Helper (WCAG 4.1.2)
Adds aria-haspopup="true" and aria-expanded="false/true" to navigation links that control sub-menus, with a small Vanilla JS event handler (no jQuery) toggling state on click, Enter, Space, and Escape.
HTML Output Remediations (EAA)
Nameless Link Fix (WCAG 2.4.4 / 4.1.2)
Detects links whose only content is an image with empty alt or an SVG icon – a pattern ubiquitous in sponsor logos, partner logos, and social media icon rows. Automatically derives aria-label from: img title, link title, recognised social domain (Facebook, Instagram, YouTube, LinkedIn, and more), or the capitalised hostname as a final fallback.
Iframe Title Fix (WCAG 4.1.2)
Adds a title attribute to every <iframe> that lacks one. Titles are matched from the src domain: YouTube, Vimeo, Google Maps, Calendly, iubenda, Spotify, PayPal, Google Forms, and others. Screen readers announce untitled iframes as simply “frame” – this fix eliminates that.
Form Input Label Fix (WCAG 1.3.1 / 3.3.2)
Adds aria-label to <input>, <textarea>, and <select> elements that have no associated <label> element and no existing aria-label or aria-labelledby. The label is derived from the placeholder text or name attribute. Fields already correctly labelled are never touched.
Content Analysis Modules
Heading Hierarchy Checker (WCAG 1.3.1)
On save_post, scans heading levels in post content and detects skips (e.g. H2 H4). Issues are persisted as _livqacea_a11y_issues post meta (JSON with type, WCAG criterion, and timestamp) and displayed as an admin notice on the edit screen.
Pre-Publish Accessibility Checklist (Gutenberg)
Adds a panel to the Gutenberg pre-publish drawer with real-time checks: (A) Core Image blocks with empty alt text, (B) paragraph links using a raw URL as visible text. No AJAX. WCAG 1.1.1 / 2.4.4.
Compliance Tools
Accessibility Scanner
Scan key page types (homepage, blog index, single posts, pages, category archives, search results, 404) for WCAG violations. Each run produces a severity-scored issue list (Critical / High / Warning) with per-criterion detail. Results are cached and cleared on demand. WooCommerce page types (shop, product, cart, checkout, my account, product category) are detected automatically if WooCommerce is active.
Accessibility Issues Log
Admin page listing all posts with a persisted accessibility issue, with a nonce-protected CSV export (BOM included for Excel UTF-8 compatibility). Provides an audit trail for EAA compliance reviews.
Contrast Checker
Real-time WCAG 2.1 colour contrast analyser built into the admin. Evaluates foreground/background pairs against three WCAG criteria: Normal text AA (4.5:1), Large text AA (3:1), and UI components / graphics (3:1, WCAG 1.4.11). Includes a quick-test palette with common colour pairs.
Accessibility Statement Generator
Configurable admin page that generates a legally-compliant Accessibility Statement referencing WCAG 2.2 AA / EAA Directive 2019/882. The statement auto-populates all active modules and their WCAG criteria (including Nameless Links, Iframe Titles, Form Labels, WooCommerce enhancements, and the Gutenberg pre-publish panel). Includes a confirmation checkbox that stores a timestamped record (user, date, plugin version, site URL) as legal evidence of operator responsibility. Embed anywhere with [livqacea_accessibility_statement]. A one-click helper creates a draft WordPress page with the shortcode pre-inserted.
Page Builder Compatibility
The PHP output buffer is automatically disabled in visual editor contexts: Divi, Elementor, Beaver Builder, Bricks, Oxygen, and Breakdance front-end editors are all detected and skipped to prevent interference with their non-HTML responses.
Privacy
This plugin does not collect, store, or transmit any personal data. No third-party services, no CDN, no external API calls are made.
Screenshots
Settings page – Accessibility Modules (WCAG 2.2 AA) with per-module toggles and WCAG criterion badges.
Settings page – HTML Output Remediations (EAA): nameless link, iframe title, and form input label fixes.
Settings page – Advanced Controls & Structure: Menu ARIA helper, heading hierarchy check, Gutenberg pre-publish checklist.
Accessibility Statement Generator – organisation type selector with legal framework guidance and live statement preview.
