Open source CMS for the EU Web Accessibility Directive

What EU public sector bodies must do on Drupal or WordPress to meet EN 301 549, publish an accessibility statement and feedback mechanism, and prepare for national monitoring.

On this page

Open source CMS for the EU Web Accessibility Directive: what public bodies must prove

The EU Web Accessibility Directive requires public sector websites and mobile apps to meet the technical criteria of the harmonised standard EN 301 549 v3.2.1, to publish an accessibility statement that names inaccessible content and alternatives, and to offer a feedback mechanism for reporting problems. A self-hosted Drupal or WordPress estate can meet these obligations, but only when conformance testing, statement upkeep and feedback handling are built into the publishing process rather than handled as a one-time project. The directive has been in force since 22 December 2016, and the Member State transposition deadline was 23 September 2018, so most public bodies are already past the point where a first audit is optional. The European Commission is explicit that accessibility overlays which do not ensure conformance are not an appropriate solution. Overlays also do not produce the evidence a monitoring body will ask for. Public bodies should instead fix the underlying templates, components and content workflows in the CMS, then test them against EN 301 549 and the WCAG criteria it references. The current WCAG 2.2 Recommendation, dated 12 December 2024, adds nine success criteria to WCAG 2.1, including 2.4.11 Focus Not Obscured (Minimum) and 3.3.8 Accessible Authentication (Minimum). Teams should confirm with their accessibility consultant which WCAG version their test scope and statement reference. This page covers the decisions that determine whether a Drupal or WordPress estate can prove conformance: how the accessibility statement and feedback channel are published and maintained, how EN 301 549 testing fits the release process, what Member States monitor and report, and how the evidence is kept. Ask your candidate partner to show a sample evidence pack for one site, including the test scope, defect log, statement version history and feedback response records. The European Commission web accessibility policy page is the primary source for the directive's scope and national monitoring arrangements, and your national transposing legislation should be checked for any additional requirements.

How the directive's requirements map to CMS build and configuration

This table maps each obligation under the Web Accessibility Directive to what the CMS must do and how Drupal or WordPress should be configured to meet it. Read each row as a question to answer with your build team before design sign-off, since the evidence column shows what an assessor or monitoring body will ask to see. The main takeaway is that conformance comes from templates, components and editorial process together, and no overlay or plugin replaces them.

RequirementWhat the CMS must doHow to configure Drupal or WordPress
EN 301 549 v3.2.1 conformance (WCAG 2.2 criteria)Meet the WCAG-based success criteria in the harmonised standard across every template, component and document typeBuild accessible base theme and components, then test criteria such as 2.4.11 Focus Not Obscured, 2.5.8 Target Size (Minimum) and 3.3.8 Accessible Authentication (Minimum) in the release pipeline
WCAG 2.2 change setAccount for nine added criteria and the removal of 4.1.1 Parsing when writing the conformance baselineRecord the WCAG version in the test plan, and confirm with the auditor which version the national monitoring body will use
Accessibility statementPublish a statement per site or app that names inaccessible content and the alternatives offeredCreate a managed statement content type with review dates, linked from the footer on every template, and keep a version history
Feedback mechanismGive users a working way to report accessibility problems and receive a responseAdd a form or contact route on each site, route submissions to a named owner, and log response times for the statement's review
National monitoring readinessProduce evidence on request for public sector monitoring of websites and appsKeep test reports, remediation tickets, release records and statement history in a retained location outside the editing tool
Commission position on overlaysDo not rely on overlay scripts to achieve conformance, since the Commission says they are not an appropriate solutionExclude overlay widgets from the theme and audit third-party scripts that inject them, then fix defects in source markup and components
Editor-created contentKeep accessibility intact when non-developers add pages, media and documentsLock heading structure, alt text fields and link text rules in the editor, and add pre-publish checks for required fields
Third-party embeds and pluginsEnsure embedded tools, forms and plugins meet the same criteria as native contentApprove each plugin or module against the criteria before adoption, and retest after each update

Which open-source CMS platforms fit an EU accessibility programme

For EU public sector bodies, the choice of CMS sets how much accessibility work lands on the platform team and how much lands on theme and front-end code. The options below differ on licensing, version lifecycle, and how much control the team keeps over markup and templates.

Drupal core and its licence

Drupal core and contributed modules derived from it are licensed under GPL-2.0-or-later, and there is no paid edition of Drupal itself. Cost therefore sits in design, build, theming, testing and support rather than licence fees. Ask the partner which contributed modules they depend on, and who maintains each one after launch.

Drupal version lifecycle

Drupal 11 is the current major version, and Drupal 12 is scheduled for the week of December 7, 2026. Drupal 10 reaches end of life on December 9, 2026, so any EU estate still on Drupal 10 needs a dated upgrade plan before that date. Drupal 10 requires PHP 8.1 or later, while Drupal 11 requires PHP 8.3 or later, so hosting stacks may also need changes.

WordPress licence and maintenance rule

WordPress is released under GPLv2 or later. Only the most recent release in the 7.1 series is actively maintained, so the public sector team must keep core within that series or move to the next line promptly. The WordPress Security Team backports critical fixes to older versions as a courtesy, but that is not a support commitment. Ask the partner how core, plugins and themes are patched on a fixed cycle.

Accessibility modules and theme control

On Drupal, accessibility work depends on the theme, contributed modules for forms, menus and media, and the editorial guidance built into content types. On WordPress, plugins for block output and forms carry much of the markup, so the theme and each plugin must be audited against EN 301 549 and WCAG 2.2. Confirm who owns templates, who approves plugin additions, and how regressions are caught before release.

Authentication for accessible editor access

Public sector editors often sign in through central identity. The contributed SAML Authentication module lets Drupal act as a SAML service provider, and the OpenID Connect module handles external OIDC providers. Check that the chosen approach keeps keyboard-operable, accessible login screens and that the partner tests the sign-in flow with assistive technology.

Headless options and front-end responsibility

Headless CMS options can fit an EU programme, but they move much of the accessibility responsibility into the front-end application. The CMS can store accurate alternative text and structured content, but it cannot guarantee conformant rendering. Ask who owns the public front end, how it is tested against EN 301 549, and how the accessibility statement and feedback mechanism are kept in step with releases.

Which starting point changes the accessibility work

A Drupal 7 site cannot be updated in place to a supported Drupal version. Drupal.org documents that Drupal 6 and 7 sites are migrated into a new site using the core Migrate, Migrate Drupal and Migrate Drupal UI modules or with Drush, and that themes must be rebuilt because they cannot be migrated. Security support for Drupal 7 ended on January 5, 2025, so the accessibility work and the migration are the same project. The Drupal Association's Extended Security Support Provider Program lists HeroDevs and Tag1 Consulting as certified vendors for sites that cannot migrate yet, which is a bridge for security patches rather than a path to conformance.

  • Theme rebuild: The front end is a new build, so every template, component and navigation pattern must be tested against EN 301 549 from the start.
  • Content audit: Legacy pages, PDFs and embedded media need an inventory before migration, so that inaccessible content is fixed or retired instead of carried over.
  • Statement scope: The accessibility statement should describe the new site, and the old site should be removed or redirected once the new one is live.
  • Support bridge: If migration will run past the window you need, confirm with the provider which fixes are covered and for how long.

Confirm with your migration partner how the old site's accessibility status is documented during the transition.

How to prepare for national monitoring of public sector sites

The sequence below gives a public body an inventory, a measured conformance baseline, a funded fix plan, a public statement and a working feedback channel, so that each in-scope site can show its status when the national authority asks. Member States have monitored and reported public sector sites to the Commission every three years since 2021, and the national authority sets the actual procedure.

  1. Build the inventory of in-scope sites and apps

    Start by listing every public sector website and mobile app the body operates or commissions, including sites run by vendors, sub-sites, microsites and campaign pages on Drupal or WordPress. Record the owner, the platform version, the editors and whether each item is in scope under the national transposition. The owner of the inventory is usually the digital or web team, with legal confirming scope. The step is done when every item has a named owner and a scope decision you can defend to the national authority.

  2. Run a baseline conformance test

    Test each in-scope site against the technical criteria of EN 301 549 v3.2.1, which draws on WCAG 2.1 for web content, combining automated scans with manual checks by testers who use screen readers and keyboard-only navigation. Include templates, forms, login flows, PDFs and any content produced by editors, not only the home page. Record results per page type and per criterion. The step is done when you hold a dated baseline report with every failure traced to a template, component or content item.

  3. Prioritize a remediation backlog

    Group the baseline failures by root cause. A defect in a shared Drupal theme component or a WordPress block template affects every page that uses it, so fix it once at the source and retest. Content-only failures go to editors with a checklist. Assign each item an owner, a release vehicle and a retest requirement, and flag items that cannot be fixed in the current release so they feed the alternatives in the statement. The step is done when every failure has a ticket, an owner and a route to closure.

  4. Publish the accessibility statement

    Publish an accessibility statement on each in-scope site that identifies the content that is not accessible, the reason, and the alternatives offered, such as a phone line or a document in an accessible format. Base the wording on the baseline results and update it as remediation closes items. Legal and accessibility leads sign off on the text before publication. The step is done when every in-scope site links to a current statement that matches the most recent test results.

  5. Open and staff the feedback channel

    Provide a visible feedback mechanism on each site so users can report accessibility problems, along with a named team that triages reports, assigns fixes and replies within a timeframe the body sets internally. Log every report with the page, the assistive technology involved and the outcome. Confirm with the national authority how reports and responses should be recorded. The step is done when the channel is live, a triage owner is named and the first reports are logged and tracked to closure.

  6. Keep the evidence set current

    Assemble and retain the records that show the body's position: the inventory, dated test reports, the remediation log, each version of the accessibility statement, feedback logs and the retest results. Store them in a location the body controls and tag them with the site, release and date. Check the set after every major theme or platform update, because a regression can reopen a closed finding. The step is done when a reviewer can trace any published statement back to the test and fix records behind it.

  7. Confirm the national procedure and cadence

    Ask the national authority which sites it will sample, what documents it expects, in what format and by when, and how it expects findings to be answered. Member States report to the Commission every three years, but the national procedure sets the real request. Feed the answers back into the inventory and evidence set. The step is done when the body holds written confirmation of the procedure and has mapped each requested item to an existing record.

What auditors and monitoring bodies ask to see

What accessibility statement does the directive require, and what must it contain?

Each public sector website and mobile app needs a published accessibility statement that identifies the content that is not accessible, the reasons, and the alternatives offered. On a Drupal or WordPress estate, the statement is best treated as managed content: it lives on a stable URL in every site footer, has a named owner, and carries a review date. Keep the version history of the statement itself, because monitoring bodies compare what was published with what the site actually does. Confirm the required wording and structure with your national transposition law and your monitoring authority, since national rules add detail to the European Commission's baseline.

What testing method and results per template do assessors expect?

Assessors expect evidence that conformance to EN 301 549 v3.2.1 was tested by template, not only by page. Record the test method (automated scans, manual keyboard and screen reader checks, and a sample of authenticated flows), the tester, the date, the template or component tested, and the result against each applicable success criterion. Drupal and WordPress sites share templates across many pages, so one defect in a shared component can affect hundreds of URLs. Keep the test reports in the same repository as the theme code so each release can be traced to the report that covered it.

Which remediation records with dates prove that defects were fixed?

Keep a defect register that links each accessibility finding to a ticket, the affected template or content type, the fix, the release that shipped it, and the date of verification. On Drupal, the release pipeline and the issue tracker provide the release and verification dates; on WordPress, the deployment log and the theme version history do the same job. Assessors look for time between detection and fix, and for regression retests. Do not claim that a fix date equals conformance: record what was retested and what remains open, with an owner for each open item.

What feedback logs and response times must a public sector site keep?

The directive requires a feedback mechanism for reporting accessibility problems. The evidence is the feedback form or contact route itself, a log of every submission with a timestamp, the category, the page or component, the response, and the closing date. On Drupal, form submissions and the audit trail of the contact module can be stored with a retention period set by your records policy. On WordPress, use a form plugin that writes entries to your own database, not to a third-party service, and confirm where the data is stored. Agree internal response targets with your legal and accessibility leads; these are your targets, not a requirement stated in the directive.

How do we document third-party components and their accessibility status?

Maintain a component inventory listing every contributed module, theme, library, plugin and embedded third-party widget, with its version, licence, maintainer, and its accessibility status. Drupal contributed modules and WordPress plugins often render markup that the core team does not control, so each one needs its own test result or a documented exception. Embedded widgets such as video players, maps, chat tools and payment forms are common gaps. Record who approved each component and why. This inventory is also the document that shows monitoring bodies you know what is running on the estate.

What change log of theme and module updates should we keep?

Keep a change log that links each deployed release to the Drupal core or WordPress core version, the contributed module or plugin versions, the theme version, and the accessibility regression test that ran before release. Drupal core security releases follow a published schedule on the third Wednesday of the month, and WordPress 7.1.3 was released on October 6, 2026, with only the latest 7.1 release actively maintained. Because of this cadence, your change log will show frequent small updates; assessors look for the test evidence attached to each one, not for a quiet estate. Automatic updates may apply some patches without a human review, so record which updates were automatic and which were approved.

What content review history do monitoring bodies expect to see?

Monitoring bodies look for proof that content stays accessible over time, not only at launch. Provide the content review history for each section: the editor, reviewer, review date, and the next review date. Drupal revision history and content moderation logs, or WordPress revision history and editorial plugin logs, show who changed what and when. Accessibility checks should be part of the editorial workflow, such as a required alt text field, heading structure checks and a review step for new document uploads. Confirm with your own editorial governance which review cycle applies to each content type.

Will an accessibility overlay or automated scan satisfy the auditors?

No. The European Commission states that overlays that do not ensure conformance are not an appropriate solution, and automated scans detect only part of the defects in EN 301 549. Automated tools are useful for regression checks and for building the evidence trail, but assessors expect manual testing with assistive technology and keyboard use. Treat the scan output as one input into the test record, and keep the manual results alongside it. DeployOpen can plan and run security and accessibility-related testing as part of an implementation or retainer, but no testing method guarantees an audit outcome.

What tooling alone does not satisfy

A CMS, its plugins and a scanner can get a site most of the way to EN 301 549 conformance, but several obligations under the directive depend on people, decisions and ongoing work. The cards below cover the places where tooling stops and a named owner, a documented process or a manual test has to take over.

Accessibility overlays

Overlays are scripts that sit on top of a site and try to correct accessibility problems at runtime. The European Commission states that overlays which do not ensure conformance are not an appropriate solution under the directive, so they cannot stand in for remediation in the template, theme or content. Check whether any overlay is loaded on the estate, remove it, and fix the underlying markup, focus handling and forms in the theme and content.

Automated scanner coverage

Automated checkers reliably catch issues such as missing alternative text, low contrast and missing form labels, but many WCAG success criteria need a person to judge meaning, sequence, focus order or whether an error message helps. A clean scan is evidence of partial coverage only. Plan manual testing with assistive technology on key templates and transactional flows, and record which criteria each test covered.

Plugin and embedded third-party content

Plugins, page builders, video players, booking widgets and map or chat embeds often inject markup that the editorial team cannot control. The public sector body remains responsible for that content on its own site. Maintain an inventory of every embed and plugin, assign each to an owner, and test the rendered output after each update, not only the theme code.

PDFs and documents published from the CMS

Documents uploaded to the site, such as reports, forms and council minutes, fall within the scope of the directive as public sector web content, and they are often the least tested part of an estate. The CMS will not make an uploaded PDF accessible. Set a document standard for authors, route source files through a remediation step, and keep an alternative HTML version where the document is required content.

Mobile apps in scope

The directive covers public sector mobile applications as well as websites, and a CMS-backed site often feeds a companion app through an API. Accessibility on the web does not carry over to the app, which has its own platform controls, navigation and gestures. Confirm which apps the body operates, assign them to a test cycle, and check whether content delivered through the API is handled the same way as the website.

Feedback process with a named owner

The directive requires a feedback mechanism for reporting problems, and the accessibility statement must describe it. A form that is published but not monitored does not meet that requirement in practice. Name an accountable owner, define who triages reports and how fast they are answered, and keep a log of reports and fixes, since this record is the evidence a monitoring body will ask to see.

How much work is making an EU public site accessible on Drupal or WordPress?

What drives the cost of making an EU public sector site accessible?

The main drivers are the number of sites and page templates, how much of the theme must be rebuilt, the size of the existing remediation backlog, and how deep the testing goes. A single site with a few templates is a much smaller job than a multi-site estate where every department uses its own variants. Migration work matters too: a Drupal 7 or Drupal 10 site cannot simply be updated, and its themes must be rebuilt, so accessibility fixes are often bundled into that rebuild. Ask the partner to price testing, theme remediation, content remediation and documentation as separate line items so you can see what each one buys.

Which accessibility costs are one-time and which recur?

The first audit, template and theme remediation, and the initial accessibility statement are one-time costs. Recurring costs include re-testing after releases, updating the accessibility statement when content or conformance changes, handling feedback submitted through the reporting mechanism, and applying security updates to keep the platform supported. Accessibility is not a state a site reaches once: new content, new components and new contributed modules or plugins can introduce barriers. Ask for the recurring scope in writing, including how many release cycles are covered per year and who triages incoming feedback.

Can our internal team make an EU public website accessible on its own?

Many teams can handle content fixes and editorial checks internally, especially alt text, heading structure, link text and document accessibility. Template, theme and component fixes usually need developers who know EN 301 549 and WCAG well, and independent testing with assistive technology is harder to do in-house without a documented method. Confirm three things before deciding: whether your developers have current WCAG 2.2 experience, whether someone can run a repeatable test plan with screen readers and keyboard navigation, and whether there is a named owner for the statement and the feedback channel. A partner can cover any gap, and the split should be written into the scope.

How much time do editors and reviewers need to commit?

The commitment depends on how much content exists and how many people publish to it. Editors need training on accessible authoring, and reviewers must check remediated pages before they go live. Content owners must confirm which pages carry legal or service information, because those pages are most likely to be checked. The total effort is not fixed by the platform. Ask the partner to estimate editor and reviewer hours by page type and site, and to show which tasks they will do and which you must do. Be cautious of any estimate that does not separate the two.

Are accessibility overlays a shortcut to compliance?

No. The European Commission says overlays that do not ensure conformance are not an appropriate solution for public sector websites. Overlays typically add a script that adjusts the page, but they cannot fix the underlying markup, keyboard traps, missing labels or inaccessible components that the directive requires you to address. They can also create new barriers for assistive technology users. Use the money for code and content remediation instead, and treat any overlay pitch as a red flag during procurement.

How does migrating from Drupal 7 or Drupal 10 change the accessibility effort?

A migration usually changes the accessibility effort more than any other single factor because it forces a theme rebuild. Drupal documentation states that Drupal 6 and 7 sites cannot simply be updated to Drupal 10 or later, they are migrated into a new site and themes must be rebuilt. Drupal 7 security support ended on January 5, 2025, and Drupal 10 reaches end of life on December 9, 2026, so sites on those versions face a deadline either way. Rebuilding the theme is the moment to fix component-level barriers once rather than page by page. Confirm with the partner whether the accessibility scope covers the rebuilt theme only or the migrated content as well.

What should we ask for in a quote for accessibility work?

Ask for a written scope that lists the sites, templates, languages and document types covered, the conformance target (EN 301 549 v3.2.1 and the WCAG criteria it references), and the testing method, including whether assistive technology testing is included. Request separate line items for initial audit, remediation, retesting, accessibility statement drafting, feedback handling and training. Ask which recurring items are included and how changes after go-live are priced. Confirm acceptance criteria and who signs off each deliverable. Ask for a list of assumptions that would change the price, such as content volume or unknown third-party components.

How long does the accessibility work take from start to finish?

The duration depends on the number of templates and sites, the size of the remediation backlog, and whether the work is combined with a migration or theme rebuild. Public sector deadlines in the EU are set by national transposition and monitoring rather than a fixed date for each site, so plan around your national authority's requirements. Ask the partner for a phased plan with milestones for audit, template fixes, content fixes and publication of the statement, and confirm which phases depend on decisions or content from your side. No duration should be accepted without the assumptions behind it.

How DeployOpen scopes accessibility work on a self-hosted CMS

DeployOpen prepares the systems, controls and evidence that a public sector body needs for an accessibility assessment, but it does not issue audit reports, attestations or certifications. Those come from independent auditors, certification bodies or the national authority that monitors your sites. In practice, that means DeployOpen can fix the Drupal or WordPress templates, document the conformance work against EN 301 549 v3.2.1 and WCAG, keep the accessibility statement and feedback mechanism current, and assemble the records a monitoring body will ask for. The assessor's conclusion is never something DeployOpen writes for you.

Most accessibility engagements are fixed-scope, and the written scope should name the sites, templates, content types, languages, authenticated areas and the feedback mechanism covered. Ask for the deliverables in writing: the test plan, the defect log with severity and owner, the remediation record, the updated accessibility statement, and the retest results. Because the scope covers the web application itself, you can also include security testing of the CMS, its login flows, forms and APIs, so that accessibility fixes do not introduce new exposure. Confirm whether that testing sits inside the same statement of work or a separate one, and who receives the findings.

Accessibility conformance drifts after launch, so ask whether ongoing work is a retainer. A retainer can cover security and feature updates to Drupal or WordPress, regression checks on new content and templates, and continuous testing of the site. Before you sign, confirm the national requirements with your own authority, including which sites and apps fall under the directive, which standard version and monitoring method apply, and what reporting format is expected. Those answers set the scope, and DeployOpen will build the evidence set around them.

How DeployOpen delivers and supports accessible EU public sites

The delivery path turns an accessibility obligation into a scoped, tested and documented estate that the public body can maintain, with the statement, feedback channel and evidence kept current after launch.

  1. Scope the estate in writing

    DeployOpen and the public body inventory every website and mobile app in scope, the Drupal or WordPress versions and modules or plugins in use, the templates and third-party embeds, and the languages and content types. The scope, deliverables and timelines are agreed in writing before work starts, and the agreed EN 301 549 v3.2.1 conformance target is recorded against each component. The output is a signed scope document and a baseline inventory the team can check against later.

  2. Audit templates and content against conformance

    Testers assess the shared templates first, since defects there repeat across every page that uses them, then sample representative content such as forms, documents, navigation and media. Findings are logged against the relevant technical criteria, with the page, component and reproduction steps for each. The output is a dated audit report that separates template-level defects from content-level defects and shows which items need manual testing with assistive technology.

  3. Build or remediate the templates

    Developers fix or rebuild the theme, components and form templates in the client's own repository, so the corrections live in the codebase rather than in a script added on top of the page. Keyboard operation, focus visibility, semantic structure, labels and error messages are addressed at the template level. The output is a merged set of template changes, each traced to the audit findings it closes, and a short note on any issues that require editorial action.

  4. Integrate accessibility tests into the release process

    Automated checks run in the continuous integration pipeline on every change, and a defined manual review covers keyboard and screen reader behavior before a release is promoted. Updates to Drupal core or WordPress, along with contributed modules and plugins, pass through the same gate before they reach production. The output is a pipeline configuration, a documented release checklist and a record that each release was tested before it was published.

  5. Publish the accessibility statement and feedback channel

    DeployOpen drafts the accessibility statement with the public body, listing the parts of the site that are not accessible, the reasons, and the alternatives offered, and publishes it at a stable address on each site. The feedback mechanism is configured so that reports reach a named owner and are logged with dates. The output is a live statement, a working feedback form or contact route, and an internal procedure for handling reports.

  6. Hand over evidence for monitoring

    DeployOpen compiles the evidence the public body needs for national monitoring, including the scope document, audit reports, remediation records, release test logs, the statement history and the feedback log. The public body confirms with its national monitoring authority which format and level of detail it expects, since requirements are set by each Member State. The output is an evidence pack organized by site and by year, with an index that shows where each item is stored.

  7. Maintain through retainers

    Ongoing upgrades, security patches, periodic re-testing and statement updates can be covered by a retainer agreed in writing. Core and module upgrades follow the vendor release cycle, and the retainer defines who triages new defects and how quickly they are fixed. The output is a maintenance calendar, periodic test reports and an updated statement and evidence pack each time the estate changes.

Sources and further reading

Talk to our team.

Tell us what you're working on, whether it's a deployment, an audit, a security test or a cyber range. You'll speak with an engineer who can help you scope it.

  • 30-minute call: free, with no obligation.
  • NDA on request: we can sign before you share details.
  • Clear next steps: a scope and plan after the call.