EAA Accessibility Auto-Fixer: volledige handleiding
Uw WordPress- of WooCommerce-site installeren, auditen en conform maken met de European Accessibility Act: WCAG 2.2 AA-scanner, automatische correcties, alt-teksten met AI en de wettelijke verklaring.
Overzicht
EAA Accessibility Auto-Fixer brengt uw WordPress- en WooCommerce-site in overeenstemming met de European Accessibility Act (EU-richtlijn 2019/882, van toepassing sinds 28 juni 2025). De plugin combineert vier onderdelen: een scanner voor WCAG 2.2 niveau AA, een automatische corrector aan de voorkant, een generator van alternatieve teksten met AI (Anthropic Claude) en een generator voor de wettelijke toegankelijkheidsverklaring.
Voor wie geldt dit? Voor EU-webwinkels met meer dan 10 werknemers OF meer dan 2 miljoen euro jaaromzet. Micro-ondernemingen zijn vrijgesteld voor diensten, maar moeten hun producten wel toegankelijk maken.
Installatie
- Download de ZIP vanuit uw DataFirefly-account.
- Ga in WordPress naar Plugins → Nieuwe plugin → Plugin uploaden, selecteer de ZIP en klik op Nu installeren.
- Klik op Activeren. De plugin maakt automatisch 4 tabellen aan (
wp_eaa_audits,wp_eaa_issues,wp_eaa_fixes,wp_eaa_alt_cache), plant een wekelijkse audit in en maakt een pagina “Toegankelijkheidsverklaring” aan met de shortcode[eaa_accessibility_declaration].
Vereisten: WordPress 6.2+, WooCommerce 8.0+ (optioneel, want de plugin werkt ook op WordPress alleen) en PHP 8.1+.
Eerste audit
- Ga naar EAA Accessibility → Audit.
- De URL van de startpagina staat al ingevuld; u kunt die vervangen door elke andere URL van de site.
- Klik op Audit starten. De scanner analyseert de pagina en toont de score op 100, de lijst met bevindingen (ernst, regel, WCAG-criterium, HTML-fragment, suggestie) en een knop Corrigeren voor de bevindingen die automatisch te herstellen zijn.
De score begrijpen
De score begint op 100 en elke bevinding kost punten naargelang de ernst: kritiek 15 punten, ernstig 8, matig 3, klein 1. Een score van 90 of meer verschijnt in het groen, 70 tot 89 in oranje, daaronder in rood. De wettelijke verklaring neemt die score over: 90 of meer geeft “Volledig conform”, 50 tot 89 “Gedeeltelijk conform”, minder dan 50 “Niet conform”.
De 15 gecontroleerde regels
- html-lang: het lang-attribuut op het rootelement (WCAG 3.1.1)
- page-title: de aanwezigheid en inhoud van de titeltag (2.4.2)
- headings: één enkele h1 en een hiërarchie zonder sprongen (1.3.1)
- image-alt: een alt-attribuut op alle afbeeldingen (1.1.1)
- link-name: toegankelijke tekst bij elke link (2.4.4)
- button-name: een toegankelijke naam bij elke knop (4.1.2)
- label: een label bij elk formulierveld (1.3.1, 4.1.2)
- skip-link: een overslaanlink bovenaan de pagina (2.4.1)
- landmarks: een aanwezig main-oriëntatiepunt (1.3.1)
- duplicate-id: geen dubbele identificaties (4.1.1)
- aria-roles: geldige ARIA-rollen (4.1.2)
- target-size: aanraakdoelen van minstens 24 bij 24 px (2.5.8, nieuw in WCAG 2.2)
- color-contrast: een contrast tussen tekst en achtergrond van minstens 4,5:1 (1.4.3)
- tabindex: geen positieve tabindex (2.4.3)
- autoplay: geen automatisch afspelen zonder bediening (1.4.2)
Automatische correcties
Schakel in EAA Accessibility → Instellingen → Actieve correcties de correcties in die de plugin in realtime toepast via een output buffer, zonder uw thema te wijzigen:
- lang-attribuut: voegt de taal van de site toe aan het rootelement als die ontbreekt.
- Overslaanlink: plaatst “Naar de inhoud” bovenaan de pagina, zichtbaar bij toetsenbordfocus.
- Ontbrekende alternatieve tekst: markeert decoratieve afbeeldingen (klassen decoration, icon en dergelijke) met een lege alt; inhoudelijke afbeeldingen gaan naar de AI als die actief is.
- Formulierlabels: voegt een aria-label toe dat uit de placeholder of de name is afgeleid, bij velden zonder label.
- ARIA-rollen en pictogrammen: aria-label op pictogramknoppen en role=”presentation” op decoratieve SVG’s.
- Focusindicator: voegt een contrastrijke :focus-visible-stijl toe.
- Contrasten: corrigeert inline kleuren onder 4,5:1 door automatisch te verdonkeren of te verlichten.
- Grootte van de doelen: garandeert 24 bij 24 px op knoppen en links via CSS.
Elke correctie wordt met de waarde voor en na vastgelegd in de tabel wp_eaa_fixes, wat handig is bij een controle. Het totaal per type staat op het dashboard.
Botst een correctie met uw thema (bijvoorbeeld een al aanwezige skip-link), schakel die correctie dan uit: de plugin herkent bestaande elementen, maar sterk aangepaste thema’s kunnen soms een bijstelling vragen.
Alternatieve teksten met AI
Configuratie
- Maak een API-sleutel aan op console.anthropic.com.
- Vink in EAA Accessibility → Instellingen → AI-generatie de optie AI inschakelen aan, plak de sleutel en klik daarna op Verbinding testen.
- Kies het model: Claude Haiku 4.5 (standaard, ongeveer 0,0001 euro per afbeelding, aanbevolen), Sonnet 4.6 (hogere kwaliteit) of Opus 4.7 (maximale kwaliteit).
Genereren in bulk
Vanaf het dashboard verwerkt de knop voor bulkgeneratie de mediabibliotheek in blokken van 5 afbeeldingen. Elke beschrijving wordt gegenereerd in de taal van de bijlage (FR, EN, ES, DE, IT), opgeslagen in wp_eaa_alt_cache en weggeschreven in het alt-veld van WordPress. De cache voorkomt elke hergeneratie: een afbeelding die al in een taal is beschreven, gaat nooit opnieuw naar de API.
Afbeeldingen groter dan 4 MB worden vóór verzending naar de API automatisch verkleind tot maximaal 1024 px, zonder gevolgen voor uw originele bestanden.
Bezoekerswidget
Schakel die in bij Instellingen → Bezoekerswidget. Er verschijnt een zwevende knop ♿ rechtsonder op de site, die een paneel opent met 8 voorkeuren: tekstgrootte (5 stappen, van 100 tot 200 procent), hoog contrast, dyslexievriendelijk lettertype, ruimere spatiëring, minder animaties, links onderstrepen, grotere cursor, en een knop om alles terug te zetten. De keuzes worden bewaard in localStorage (geen cookies, geen gegevens naar de server) en bij elk bezoek hersteld. Het paneel is volledig met het toetsenbord te bedienen en sluit met Escape.
Wettelijke verklaring
De pagina die bij de activering wordt aangemaakt, toont via de shortcode [eaa_accessibility_declaration]: de conformiteitsstatus op basis van de laatste audit, de score, de datum, de niet-toegankelijke inhoud, de methodologie en uw contactgegevens. Vul die informatie in bij Instellingen → Gegevens voor de wettelijke verklaring: bedrijfsnaam, e-mailadres voor toegankelijkheid, telefoon en postadres.
Handmatige aanvulling aanbevolen. Voeg uw wettelijke identificaties toe (KvK-nummer, btw-nummer of gelijkwaardig) en laat de verklaring nakijken door een toegankelijkheidsexpert: de plugin dekt 30 tot 40 procent van de automatiseerbare criteria, en een menselijke controle blijft nodig voor volledige conformiteit.
Zet daarna een link naar die pagina in uw footer: dat is een vereiste van de EAA.
Geplande audits
Kies bij Instellingen → Geplande audit de frequentie: dagelijks, wekelijks (standaard) of maandelijks. De WordPress-cron scant dan automatisch de startpagina en vult de historiek. Alle eerdere audits vindt u in EAA Accessibility → Historiek, met score, duur en de verdeling van de bevindingen naar ernst.
Verwijderen
Standaard blijven de tabellen en de historiek bij het verwijderen behouden (voor de wettelijke traceerbaarheid). Wilt u alles wissen, schakel dan vóór het verwijderen de optie voor gegevensverwijdering in bij de instellingen: de 4 tabellen, de opties en de verklaringspagina worden dan weggehaald.
Probleemoplossing
De scanner geeft een verbindingsfout
De scanner gebruikt wp_remote_get om de pagina op te halen. Controleer of uw server zichzelf kan aanroepen (loopback): sommige hostingpartijen blokkeren uitgaande verzoeken naar het eigen domein van de site. Test dit via Gereedschap → Sitediagnose.
De test van de API-sleutel mislukt
Controleer of de sleutel met sk-ant- begint, of uw Anthropic-account tegoed heeft, en of de server uitgaande HTTPS-verbindingen naar api.anthropic.com toestaat.
De correcties worden niet toegepast
De corrector is niet actief op RSS-feeds, REST- en AJAX-verzoeken, het beheer en de cron. Serveert een cacheplugin een statische versie, leeg dan de cache na de activering. Controleer ook of Frontendcorrector inschakelen wel is aangevinkt.
De widget verschijnt niet
Controleer of de Bezoekerswidget is ingeschakeld bij de instellingen en of uw thema wp_footer() wel aanroept: de widget haakt op die hook aan.