New plug-in: WP Accessibility

October 22, 2012

Topics: Accessibility, WordPress.

I released a brand-new WordPress plug-in today, targeted specifically at improving accessibility issues. There’s only so much you can do via a plug-in when it comes to site accessibility — most of what grants accessibility for a WordPress site is in the theme. However, that doesn’t mean that you can’t do anything.

This plug-in is designed to help shoehorn some accessibility improvements into themes that need a bit of help. It can do a fair amount, and every feature can be disabled or enabled as needed for a specific theme.

The plug-in is new, so forgive me for any errors — either in judgement or in execution — but here’s what it can do so far:

  • Remove redundant title attributes from page lists, category lists, and archive menus.
  • Enable skip links with WebKit support by enqueuing JavaScript support for moving keyboard focus.
  • Add skip links with user-defined targets.
  • Add language and text direction attributes to your HTML (HyperText Markup Language) attribute
  • Remove the target attribute from links.
  • Force a search page error when a search is made with an empty text string.
  • Remove tabindex from elements that are focusable.
  • Strip title attributes from images inserted into content.
  • Add post titles to standard “read more” links.

Many of these are tasks that have been performed by a diversity of plug-ins or have been known as customizations to WordPress over the years, but many of these plug-ins have not been updated for a long time. I’ve centralized several valuable accessibility improvements into one plug-in, to hopefully increase the ease of implementation and ability to find what you need!

At the moment, the plug-in is focused on front-end issues, and does not currently include any administrative improvements.

Download WP Accessibility now and give it a try!

Have something to contribute?

« Read my Comment Policy

9 Comments on “New plug-in: WP Accessibility”

  1. Thank you! Making changes to the admin side is orders of magnitude more difficult — and harder to maintain — than making changes on the front end.

    Have you tried the accessibility mode for the widgets interface? Since WordPress 3.4 doesn’t have skip links, it’s rather difficult to get to, since the only link to it is in the Admin Bar, and that’s rendered at the end of the HTML (HyperText Markup Language) — but in the forthcoming WordPress 3.5 that’s much easier to get to with the addition of skiplinks in the admin.

    It’s in the toolbar, under ‘Screen Options’, and is the only screen option on the widgets page.

  2. Hello,
    Really great job ! I know that this plug-in does not yet focus on admin interface accessibility issues. But may I submit one of my main issue, so you can enqueue it for further release? I’m blind and I can’t move widgets where I want since they’re only movable with the mouse device. Like Drupal, it would be really helpful to have drop-down list where we can chose the area where a given widget would be placed on.
    Thanks for the job already done!

  3. Thanks, Rian! That was an important part of making the plug-in practical: many of these features are best accomplished by a theme, so I wanted to make sure that people using the plug-in could just turn on those settings that they needed.

  4. Hello Joe,
    This is nice work! Thanks. I love the way you made it all optional with the settings page, and the way the skip links can be used for different themes and CSS (Cascading Style Sheets).
    Kind regards,

  5. Thank you, Sarah and James! I appreciate your sharing and comments.

  6. Great work Joe. Trying this out now – and already passing around to colleagues using WordPress. Thank you!

  7. Absolutely fantastic. Will be giving this a try very soon – well done!

  8. Thank you, Joe! This plug-in was actually a lot of fun to write, so that was a big bonus.

  9. Joe, this is splendid. Dennis Lembree @dennisl and I were talking about your accessibility work on WordPress and he told me that you were working on this plug-in. Thanks very much for all your hard work on these issues!