Bigger Tap Targets for Small Links and Buttons
Gives menu links, pagination links, icon buttons and form controls a minimum 24 by 24 pixel tap area, the WCAG 2.2 target size minimum, without changing how they look.
Snippet Library
Snippets that make WordPress easier for everyone to use: skip links, focus styles, better link text and fixes for common accessibility issues. For site owners who want a site that works with keyboards and screen readers.
Gives menu links, pagination links, icon buttons and form controls a minimum 24 by 24 pixel tap area, the WCAG 2.2 target size minimum, without changing how they look.
Disables the Publish and Update buttons in the block editor while any image block is missing alternative text, and shows a notice explaining why.
Styles buttons from one brand color and picks black or white text automatically based on how light the color is, with matching hover and focus states, so button text always stays readable.
Lets keyboard users press Escape to close an open dropdown or mobile menu and returns focus to the button or link that opened it.
Adds a [transcript] shortcode that wraps the text version of a podcast or video in an accessible show/hide section, so every recording can have a transcript without cluttering the page.
Adds a Tools > Contrast Checker page where you pick a text and background color and instantly see the WCAG contrast ratio and whether it passes AA and AAA for normal and large text.
Limits paragraphs, lists and quotes in posts to about 75 characters per line, the width recommended for readability, while wide blocks such as images and tables keep the full width.
Adds the post title as hidden text to "Read more" and "Continue reading" links, so screen reader users hear where each link goes instead of a list of identical links.
Adds aria-labels like "Previous post: Title" to the previous and next post links in classic themes, so screen readers announce where each link leads.
Makes buttons, focus outlines, icons and custom checkboxes stay visible when visitors use Windows High Contrast or another forced-colors mode, where many themes lose borders and icons.
Adds an accessible name to the search field of theme search forms that have no label, so screen reader users hear "Search" instead of an unlabeled text field.
Adds a "Heading outline" panel to the block editor sidebar that lists the post's headings as an indented outline and flags skipped levels (such as an H2 followed by an H4) and empty headings.
Adds aria-hidden to inline SVG icons that sit next to visible text inside links and buttons, so screen readers stop announcing meaningless graphic names.
Finds heading tags on the page that contain no text (often left behind by page builders and themes) and hides them from screen readers, so they do not show up as blank entries in the heading list.
Adds a "High contrast" checkbox to each user's profile that switches the dashboard to dark backgrounds, white text, yellow links and strong borders for that user only.
Outlines the Alternative Text field in red when it is empty in the media library and media modal, so authors notice it before inserting an image.
Adds a dashboard widget showing how many images in the Media Library have no alternative text, with a link to the most recent ones to fix.
Finds code blocks, tables and other boxes that scroll sideways or vertically but contain nothing focusable, and makes them keyboard-focusable with a label, so keyboard users can scroll them with the arrow keys.
Adds aria-current="page" to any link on the page that points to the page being viewed, for menus, widget link lists and footer links that do not mark it themselves.
When the classic WooCommerce checkout shows errors (such as a missing field or a declined card), moves keyboard focus to the error list and has screen readers read it out.
When a visitor submits a form with missing or invalid fields, moves keyboard focus to the first problem field and announces the browser's error message to screen readers.
Gives every classic menu location its own accessible name (for example "Primary menu" or "Footer menu"), so screen reader users can tell navigation regions apart.
Gives links and buttons that contain only an icon an accessible name taken from their title attribute or the icon's label, so screen readers do not announce them as just "link" or "button".
Gives links in your content whose only content is an image with empty alt text an accessible name, using the title of the page they point to, so screen readers no longer announce just the URL.