Craft CMS Authoring Tool Accessibility Guidelines (ATAG) Report
Tool Name
Craft CMS
Website
Conformance Target
Level AA
Report Identifier
Aug 12, 2024 / Version 5.3.0
Evaluator
Lupe Camacho
Organization
Pixel & Tonic
Contact Information
Applicable Guidelines
This report covers the degree of conformance for the following accessibility guidelines:
Results
Summary
- 11 Passed
- 19 Failed
- 0 Cannot tell
- 29 Not applicable
- 0 Not checked
All Results
Success Critera IDs | Success Critera | Result | Observations |
---|---|---|---|
A.1.1.1 | Web-Based Accessible (WCAG) | Failed |
We audited the Craft 5.0.0 authoring experience against WCAG 2.2 AA success criteria and published a conformance report. At a high level, the results are:
|
A.1.2.1 | Accessibility Guidelines | Not applicable |
Craft CMS is a web-based CMS. |
A.1.2.2 | Platform Accessibility Services | Not applicable |
Craft CMS is a web-based CMS. |
A.2.1.1 | Text Alternatives for Rendered Non-Text Content | Passed |
When the native Alternative Text field is enabled for image assets, the image’s alternative text is used in editing views throughout the control panel. |
A.2.1.2 | Alternatives for Rendered Time-Based Media | Failed |
The only time-based media rendered in the control panel are video assets and animated images. Animated images, like GIFs, function identically to other images (see A.2.1.1). Video previews are not rendered in editing views but only in standalone Preview modals accessible from editing views. When a video asset’s Alternative Text field is filled, the contents are available as “Transcript” text below the video in the Preview modal. Craft CMS does not allow you to attach caption tracks to uploaded videos. Videos previewed in the control panel will only have captions if they have been hard-coded into the video files. |
A.2.2.1 | Editing-View Status Indicators | Failed |
Craft CMS includes the following status indicators for its fields:
The following status indicators pass:
The following status indicators fail:
|
A.2.2.2 | Access to Rendered Text Properties | Not applicable |
In a default install, Craft CMS doesn’t include fields that allow you to edit text formatting properties. |
A.3.1.1 | Keyboard Access (Minimum) | Failed |
Most of Craft CMS is keyboard accessible, but there are some exceptions. The Craft CMS v.5.0.0 Accessibility Conformance Report, section 2.1.1 Keyboard, provides a detailed account of issues. As of version 5.3.0, both issues related to details pages have been resolved:
|
A.3.1.2 | No Keyboard Traps | Failed |
There is a single bug that introduces a focus trap in the control panel:
|
A.3.1.3 | Efficient Keyboard Access | Passed |
The Craft CMS interface uses several mechanisms to make keyboard access more efficient:
|
A.3.1.4 | Keyboard Access (Enhanced) | Not applicable |
Not in scope. |
A.3.1.5 | Customize Keyboard Access | Not applicable |
Not in scope. |
A.3.1.6 | Present Keyboard Commands | Not applicable |
Not in scope. |
A.3.2.1 | Auto-Save (minimum) | Passed |
Craft CMS’s default behavior is to autosave drafts (see the autosaveDrafts config setting). When a user updates content, unsaved changes are automatically stored. |
A.3.2.2 | Timing Adjustable | Passed |
Adjustable timing is successfully implemented for user session durations. When a user’s session is close to expiring, a modal allows them to extend it. Users can adjust the display time of notification toasts in their preferences or make them persistent. However, users may encounter short toast display times before updating this setting unless developers have set a longer or indefinite duration time. |
A.3.2.3 | Static Input Components | Passed |
Craft CMS does not include any moving user interface controls. |
A.3.2.4 | Content Edits Saved (Extended) | Not applicable |
Not in scope. |
A.3.3.1 | Static View Option | Failed |
Videos are not auto-played in the control panel except in response to user interaction. However, previews of GIFs and other image formats that support animation do auto-play and could pose a risk to authors with photosensitive seizure disorder. |
A.3.4.1 | Navigate by structure | Not applicable |
Custom fields and their resulting markup are highly customizable by developers, so there is not a clear 1:1 relationship between the editing view and document structure that would allow for intuitive keyboard navigation. |
A.3.4.2 | Navigate by Programmatic Relationships | Not applicable |
Not in scope. |
A.3.5.1 | Text Search | Failed |
The authoring tool does not have a feature for searching text on authoring screens. While an author can activate the in-browser search to search editable text, the search is not limited to the focused field. While the in-browser search is usually sufficient for finding text in editable fields, there are some outstanding issues. The in-browser search also finds invisible and off-screen content, so the visible search focus may be lost. In addition, content may be separated into various tabs in the field layout; browser search cannot find editable content in inactive tabs. |
A.3.6.1 | Independence of Display | Passed |
Craft CMS’s display settings can be adjusted without modifying the content that’s being edited. |
A.3.6.2 | Save Settings | Passed |
Preference settings are associated with author accounts, and settings are applied as soon as authors log in. |
A.3.6.3 | Apply Platform Settings | Failed |
Display settings
Control settings: The CMS respects the user’s method of control. There are no explicit control modes, and users can switch between various control methods (voice, keyboard, mouse, etc.) without updating their preferences. |
A.3.7.1 | Preview (Minimum) | Passed |
Craft CMS supports content previewing via the Live Preview functionality and provides links to view front-end templates. |
A.3.7.2 | Preview (Enhanced) | Not applicable |
Not in scope. |
A.4.1.1 | Content Changes Reversible (Minimum) | Failed |
Built-in features of the CMS help authors easily reverse changes to some content and settings. Content Entries support versioning, which allows content authors to view and restore entries from previous versions (i.e., “Revisions”). In addition, when authors edit an entry, the CMS creates a provisional draft and autosaves changes. If the author wants to revert these changes to the most recently saved version, a UI control allows the author to discard unsaved changes easily. While they do not support versioning, categories also support provisional drafts, so content authors can easily discard unsaved changes. Assets, tags, and globals do not support either versioning or provisional drafts, so changes must be reversed manually. Settings Authors can update and reverse changes to user interface settings from the Account page. |
A.4.1.2 | Settings Change Confirmation | Passed |
All user preference changes can be undone by revisiting the Preferences page and adjusting the settings. |
A.4.1.3 | Content Changes Reversible (Enhanced) | Not applicable |
Not in scope. |
A.4.2.1 | Describe Accessibility Features | Failed |
Not all functionality used to meet Part A has been documented. Documented:
Undocumented:
|
A.4.2.2 | Document All Features | Failed |
Most control panel functionality has been documented. Features and changes in functionality may cause gaps in coverage. Craft CMS documentation does not currently conform to WCAG 2.2 Level AA. |
B.1.1.1 | Content Auto-Generation After Authoring Sessions | Passed |
Craft CMS only edits content during an active authoring session. |
B.1.1.2 | Content Auto-Generation During Authoring Sessions (WCAG) | Failed |
HTML output is highly customizable by developers via Twig templating; web content and markup are never fully and automatically generated without room for intervention or remediation. However, some Twig code outputs complete HTML markup when used in templates. Automatically-generated markup is accessible in the following scenarios:
Markup is not accessible in the following scenario:
Craft CMS does not perform automated checking. However, developers can prompt authors for more information by requiring fields that result in accessible content. For example, the native Alternative Text field is not required by default, but developers can make it required when building the asset field layout. To ensure users enter alternative text when uploading assets via a custom field, the “Validate related assets” setting should be enabled. This prevents the source element from being saved when validation errors exist on the related assets. |
B.1.2.1 | Restructuring and Recoding Transformations | Not applicable |
The authoring tool does not incorporate any restructuring or recoding transformations. |
B.1.2.2 | Copy-Paste Inside Authoring Tool (WCAG) | Not applicable |
Rich text fields are only available in Craft CMS when installing additional plugins. In a basic install, because field inputs don’t support rich text, copy-paste from other sources will strip the formatting. |
B.1.2.3 | Optimizations Preserve Accessibility | Not applicable |
Craft CMS doesn’t perform any optimizations or transformations that would affect accessibility. |
B.1.2.4 | Text Alternatives for Non-Text Content are Preserved | Not applicable |
Craft CMS doesn’t perform any recoding transformations involving non-text content. |
B.2.1.1 | Ensure that accessible content production is possible. | Failed |
Accessible content production in the CMS relies on how developers have configured it in terms of content modeling, front-end templating, etc. However, some issues may affect accessible content production:
|
B.2.2.1 | Accessible Option Prominence (WCAG) | Not applicable |
There are no built-in authoring actions that result in a predictable authoring outcome, as these are dependent on the content model and templates defined by the developer. |
B.2.2.2 | Setting Accessibility Properties (WCAG) | Not applicable |
Craft CMS doesn’t provide authors with a method of editing web content properties. |
B.2.3.1 | Alternative Content is Editable (WCAG) | Failed |
Craft CMS supports editing text alternatives everywhere images and videos can be added. However, authors cannot mark images as decorative or change the alternative text in different contexts. |
B.2.3.2 | Automating Repair of Text Alternatives | Passed |
Craft CMS doesn’t try to automate the repair of text alternatives. If an image doesn’t have a text alternative, the alt attribute is not applied so that automated checks can catch the issue. |
B.2.4.1 | Accessible Template Options (WCAG) | Not applicable |
The authoring tool doesn’t provide any templates. Craft CMS makes no assumptions about the site’s front-end markup, and developers have complete control over all templates and markup. |
B.2.4.2 | Identify Template Accessibility | Not applicable |
The authoring tool doesn’t provide any templates. |
B.2.4.3 | Author-Created Templates | Not applicable |
Authors cannot create new templates. |
B.2.5.1 | Accessible Pre-Authored Content Options | Not applicable |
Craft CMS does not provide pre-authored content. |
B.2.5.2 | Identify Pre-Authored Content Accessibility | Not applicable |
Craft CMS does not provide pre-authored content. |
B.3.1.1 | Checking Assistance (WCAG) | Failed |
Craft CMS does not include any integrated accessibility checking. However, because custom fields and the resulting templates are highly customizable, developers can provide basic checking assistance by
|
B.3.1.2 | Help Authors Decide | Not applicable |
Craft CMS does not provide checks for web content accessibility problems. |
B.3.1.3 | Help Authors Locate | Not applicable |
Craft CMS does not provide checks for web content accessibility problems. |
B.3.1.4 | Status Report | Not applicable |
Craft CMS does not provide checks for web content accessibility problems. |
B.3.1.5 | Programmatic Association of Results | Not applicable |
Craft CMS does not provide checks for web content accessibility problems. |
B.3.2.1 | Repair Assistance (WCAG) | Not applicable |
Craft CMS does not provide checks for web content accessibility problems. |
B.4.1.1 | Features Active by Default | Failed |
Craft CMS does not include any accessibility checkers. The only accessible content support feature we’ve identified is the native Alternative Text field and its validation. Developers can enable accessible content support for images by including the native Alternative Text field in image asset field layouts and:
However, these are not active by default and rely on developer setup. |
B.4.1.2 | Option to Reactivate Features | Failed |
The feature identified in B.4.1.1 can only be activated by a developer. Authors cannot activate or deactivate this feature themselves. |
B.4.1.3 | Feature Deactivation Warning | Not applicable | |
B.4.1.4 | Feature Prominence | Not applicable |
Craft CMS does not include features for checking invalid markup, syntax errors, spelling errors, or grammar errors. |
B.4.2.1 | Model Practice (WCAG) | Failed |
Documentation does not consistently demonstrate accessible authoring practices. |
B.4.2.2 | Feature Instructions | Failed |
There is no documentation about the native Alternative Text field that is geared toward content authors. |