Adzbyte
All Articles
DevelopmentWordPress

What I Found Running an Accessibility Audit on a Client WordPress Site

Adrian Saycon
Adrian Saycon
January 16, 20261 min read
What I Found Running an Accessibility Audit on a Client WordPress Site

A client asked me to run an accessibility audit on their WordPress site before a redesign. The site looked professional and worked well visually. But Lighthouse, axe DevTools, and manual keyboard testing revealed a different story.

Missing Alt Text Was Everywhere

Out of 340 images on the site, 127 had empty alt attributes. WordPress adds alt text fields in the media library, but most content editors never fill them in. The fix was two-fold: add alt text to existing images via a bulk update script, and make the alt text field required in the media upload flow:

add_filter("attachment_fields_to_edit", function ($fields, $post) {
    $fields["_wp_attachment_image_alt"]["required"] = true;
    return $fields;
}, 10, 2);

Focus Indicators Were Removed

The theme CSS included outline: none on interactive elements — a common anti-pattern that makes the site unusable for keyboard users. Never remove focus indicators. Instead, style them to match your design:

:focus-visible {
    outline: 2px solid var(--accent-color);
    outline-offset: 2px;
    border-radius: 2px;
}

Color Contrast Failures

Light gray text on white backgrounds failed WCAG AA contrast requirements in multiple places. The minimum contrast ratio is 4.5:1 for normal text and 3:1 for large text. I use the WebAIM contrast checker during design to catch these before they ship.

Form Labels Were Missing

Contact forms used placeholder text instead of labels. Placeholders disappear when you start typing, leaving users unsure what field they are filling in. Every input needs a visible <label> element with a matching for attribute.

The Impact

After fixing these issues, the Lighthouse accessibility score went from 64 to 98. More importantly, the site became usable for the 15% of people who rely on assistive technologies. Accessibility is not a feature — it is a baseline requirement.

Adrian Saycon

Written by

Adrian Saycon

A developer with a passion for emerging technologies, Adrian Saycon focuses on transforming the latest tech trends into great, functional products.

Discussion (0)

Sign in to join the discussion

No comments yet. Be the first to share your thoughts.