No account to open, no CDN, no cookie, nothing tracked, and no vendor branding on your site. Widewalk runs entirely from your own WordPress install, which keeps your visitors’ data on your own domain. Nothing is sent anywhere on its own. One optional feature can keep a weekly record of your own repo
PricingFree downloadThe WordPress.org download is free. Pro versions, add-ons or external services may cost extra.
CompatibilityRequires WordPress 6.2 and PHP 7.4.
SourceWordPress plugins · Nov 4, 2026
01 / Source details
Aboutthistool.
No account to open, no CDN, no cookie, nothing tracked, and no vendor branding on your site. Widewalk runs entirely from your own WordPress install, which keeps your visitors’ data on your own domain.
Nothing is sent anywhere on its own. One optional feature can keep a weekly record of your own report’s three counts off your server, and it moves only when you press the button that sends it. Nothing about your visitors is ever part of it.
Widewalk puts a small button in the corner of your site. A visitor presses it and a panel opens with the settings they need in order to read you: bigger text, more air between the lines, letters further apart, links they can actually pick out of a paragraph, a calmer palette, a pointer large enough to find. Whatever they choose is kept in their own browser. Nobody else’s view of your site moves an inch.
You switch it on once. It works with the theme you already have, on the front end you already have, and it asks nothing of your visitors in return.
Light, private, and yours
Free in the way that matters: no account, no API key, no third-party service, nothing to buy on a second screen.
About 8 KB gzipped in total. One small script and its stylesheet, no framework and no jQuery.
It renders in a shadow root, so a hostile theme cannot break it and it cannot leak into your page. It is tested against a theme built to break it.
Works past WordPress too: one script tag drops the same panel onto pages you keep WordPress only to administer.
What you decide
All twelve controls have their own switch, so you offer the ones that suit your site and leave the rest off. You choose which bottom corner the button sits in. You publish your accessibility statement from the same screen, in a long or a short version. That is the whole settings page, and there is nothing to configure before it works.
The name comes from pavements built wide enough for everyone at the same time: the wheelchair, the pushchair, the delivery trolley, and the people walking alongside them. Widen the path rather than build a second one round the back.
What a visitor can change
Each control steps through its settings as it is pressed, and the button says which step it is on. “Line Height (1.75x)” or “Low Saturation” tells a visitor where they are without making them guess.
Letter and word spacing, from light through to heavy
Invert Colors, then High Contrast
Saturation: low, high, or monochrome
Highlight Links, then Boxed Links
Dyslexia Friendly type
Big Cursor, then Bigger Cursor
Pause animations
Hide images
Text alignment: left, centre, right
Tooltips, which read out the descriptions a screen reader gets and a mouse user never sees
Twelve of them, and each has its own switch on the settings screen. Offer the ones that suit your site and leave the rest off.
This is not an overlay
Worth saying plainly, because that word has earned its reputation. Widewalk does not scan your pages, does not rewrite them for everybody, and makes no claim about your legal compliance. Those three promises are what the overlay industry sells, and no plugin is in a position to keep them.
Accessibility lives in your own markup. Your headings, your alt text, your colour contrast, your link text, your forms. Five minutes with any plugin will not change what is underneath.
What Widewalk does is smaller and it is true. It hands a visitor the settings they would otherwise have to fight your stylesheet for, which is real help to somebody with low vision, or dyslexia, or a migraine coming on, or a phone held up in bright sunlight. Do the underlying work as well. This sits beside it.
It writes your accessibility statement
Any site that offers a panel like this ought to say what it is aiming for and how to report a problem. Most plugins tell you to go away and write one. Widewalk writes it for you, out of what you have actually switched on, and shows you the whole thing before a word of it is published.
Choose the complete version, which follows the structure the W3C recommends, or the short one if your site is small. You supply two things: an address where somebody can report a barrier, and the number of working days you will take to reply. Promise something you can keep.
Publish it and you have an ordinary WordPress page, yours to edit like any other. Widewalk will not overwrite it later. The wording claims partial conformance and nothing beyond that, because a plugin cannot certify a site it has never seen.
Built to survive your theme
The panel renders inside a shadow root. Your stylesheet cannot reach into it, and its stylesheet cannot leak out into your pages. It has been measured against a theme written for the sole purpose of breaking it: global button rules marked !important, a forced box model, oversized icons, a page claiming the highest stacking order there is. It came through without a mark.
Block themes, classic themes, page builders. It mounts on wp_footer , which every theme fires.
Works past WordPress, too
Plenty of sites keep WordPress for the admin and build their public pages in plain PHP, in React, or as static files. Nothing on those pages runs a WordPress footer, so the panel never arrives. Add one line to your own instead:
Same panel, same controls, the settings you already chose. Nothing else to set up.
Light, and quiet about it
About 7 KB gzipped covers everything a visitor downloads. One stylesheet, one small script, no framework, no jQuery.
Switch the panel off and nothing at all is added to your pages.
No account, no API key, no third-party service, no fonts pulled from somebody else’s server.
Nothing is tracked about your visitors and no cookie is set. Preferences sit in local storage on the visitor’s own device, under a single key.
One request can leave, and only if you press the button that sends it. It carries counts, never content. See External services below.
Made to the standard it talks about
Every control works from the keyboard alone, with a focus outline you can see.
The panel is a labelled dialog. Focus stays inside it while it is open, and returns where it came from when it closes.
Changes are announced to screen readers as they happen.
Motion stops when a visitor’s device has asked for less of it.
Text and background inside the panel meet WCAG 2.2 AA contrast.
Who installs it
Sites whose readers are not all twenty-five with good eyes and a large monitor. Charities, galleries, schools, clinics, councils, artists, shops, small newsrooms. Anywhere that would rather be read than admired.
External services
Widewalk works fully without contacting anything. One optional feature sends a short note to WalletUp, and only after you press the button that sends it.
What it is. A dated record of your content report’s three counts, kept once a week off your own server, so you can show the accessibility work you are doing, watch the counts fall over time, and still have the record after a reinstall.
What is sent, and when. Once at the moment you press the button, then once a week while it stays switched on. Every field is shown on the settings screen, filled in with your own values, before you press anything:
site: your site address
token: a random name for this site’s record, made on your site, meaning nothing on its own
plugin: the plugin name and version
wp: your WordPress version
php: your PHP version
locale: your site language
issues: how many findings the content report counted, as three numbers: critical, serious, moderate
No page content, no post or page titles, no email address, no user account, no IP-based profile, and nothing about anyone visiting your site.
When a site connects for the first time, WalletUp fetches one public address on it, /wp-json/widewalk/v1/registry, to confirm the note really came from that site and not from someone naming it. That address answers with a yes and a check value; it carries no content and no settings.
To show you your weeks, the settings screen asks for them back with site, token and the word history, at most once an hour.
Pressing stop sends site, token and the word leave, deletes your numbers there, and removes everything the plugin kept about it here. Nothing else is sent at any time.
Where it goes. https://walletup.app/wp-json/widewalk-registry/v1/site , run by WalletUp. Terms: https://walletup.app/terms/ . Privacy: https://walletup.app/privacy/
For theme developers
Widewalk tells the page about every preference, so a theme can respond in ways the toolbar cannot know about, such as swapping a hero video for a still, reflowing a grid, or replacing a decorative image with its caption.
Attributes on the html element (a stable contract):
data-a11y-animations, data-a11y-images, data-a11y-text, data-a11y-invert, data-a11y-saturation, data-a11y-lineheight, data-a11y-spacing, data-a11y-align, data-a11y-links, data-a11y-dyslexia, data-a11y-cursor and data-a11y-tooltips each hold the active level as a number, and are absent when the control is off.
data-a11y-os-reduce is “1” when the visitor’s system asks for reduced motion.
Events on document:
widewalk:change fires once at load with detail.state (every control and its level), and again on each change with detail.key and detail.level.
widewalk:motion fires when animations are paused or resumed with detail.paused, kept for compatibility.
Mark any element the toolbar should leave alone with data-widewalk-keep. Images, media and animations inside it stay untouched when images are hidden or motion is paused.
See it in action
Screenshots & previews.
The panel open on a live page. A visitor sets your site the way they read it, and the choice stays in their own browser.The panel up close: five quick profiles and the first of the twenty controls. One tap on a profile sets a group of controls at once.The rest of the panel: the newer controls, a reading mode, and quick jumps to any heading or link on the page.The settings screen. Switch the panel on, choose where it sits, and pick which of the twenty controls to offer.More settings: quick profiles, the reading mode and page navigators, a keyboard shortcut, and the panel's accent colour.The same page before and after a profile, shown as it happens. One tap resizes the text, switches on a readable font and marks the links. This screenshot is animated.
02 / Source details
Gettingstarted.
01Install from Plugins → Add New, or upload the folder to /wp-content/plugins/ .
02Activate it.
03Open Settings → Widewalk and switch the panel on.
04While you are there, publish your accessibility statement from one of the two templates. Read it through afterwards and make it true of your site.
That is the whole setup. There is nothing to configure before it works.
03 / Source details
Frequently asked questions.
Does this make my site ADA or WCAG compliant?
No, and treat anything that says otherwise with suspicion. Conformance rests on your own markup: headings, alt text, contrast, link text, forms, error messages. Widewalk helps a visitor read what you have written. It cannot repair what sits underneath. Use it alongside the real work.
Is Widewalk an accessibility overlay?
No. An overlay scans your page and rewrites it for every visitor, usually with a promise of automatic compliance attached. Widewalk changes nothing until a visitor asks it to, changes it only for that visitor, and promises nothing about your legal position.
My site’s front end isn’t WordPress. Can I still use it?
Yes. Plenty of sites keep WordPress for the admin and build their public pages in plain PHP, in React, or as static files. Nothing on those pages runs a WordPress footer, so add one line to your own:
That is the whole integration. It reads the settings you chose in the admin and mounts the same panel, with the same controls.
Settings has the line ready to copy, and a box where you can give it one of your own pages. It will fetch that page and tell you whether the line arrived, so you are not left guessing.
Will it work with my theme?
Yes. The panel lives inside a shadow root, so your theme’s rules do not reach it and its rules do not escape into your pages. It has been tested against popular themes and against a stylesheet built on purpose to wreck it. Block themes, classic themes and page builders are all fine.
Will it slow my site down?
Everything a visitor downloads comes to roughly 7 KB gzipped: one stylesheet, one small script, no framework, no jQuery. With the panel switched off, nothing is added to your pages at all.
Does it collect anything about my visitors?
Nothing. No tracking, no analytics, no account, no cookie. Preferences are held in local storage in the visitor’s own browser. Nothing about a visitor is read, kept or sent, and that does not change if you connect the site: the note that travels then is about the site, never about anyone reading it.
Is it GDPR-friendly?
There is nothing about your visitors to disclose: nothing is collected about them, nothing is stored and nothing is shared. Preferences never leave their device. If you connect the site, what travels is your own site address and a count of findings, which is yours to decide on and yours to undo.
Can I choose which controls appear?
Yes. All twelve have their own switch. Offer what suits your site and leave the rest off.
Do I really need an accessibility statement?
If you are offering a panel like this, you should say what you are aiming for, what you know still falls short, and how somebody tells you about a barrier. Public bodies in many countries are required to publish one. Widewalk writes the page in two lengths and links the panel to it.
Does it work on phones?
Yes. The panel is built for touch as much as for mouse and keyboard, and the controls are large enough to press without aiming.
Can somebody use it with a keyboard, or a screen reader?
Yes. Every control is reachable by keyboard with a visible focus outline. The panel is a labelled dialog, focus is held inside it and returned when it closes, and each change is announced.
Pausing animation does not stop my slideshow. Why?
A slideshow that moves on a timer is a script, and a plugin cannot safely reach into another script’s timers. Widewalk stops what it can reach: animation and transitions from your stylesheet, video and sound, and moving SVG.
For the rest it tells your page, and the page can stop itself. Two lines in your theme are enough. Widewalk puts data-a11y-animations on the html element, and fires a widewalk:motion event on the document:
if (document.documentElement.hasAttribute('data-a11y-animations')) return;
Put that at the top of whatever advances your slides, and it will hold still while a visitor has asked it to.
Does it respect “reduce motion”?
Yes. When a visitor’s device asks for less motion, the panel stops animating. They can also pause animation across your whole site from inside the panel.
Can I move the button?
Yes, to either bottom corner, from the settings screen. A visitor can move it themselves as well, if it is sitting over something they need.
I already have an accessibility toolbar. Can I run both?
Please don’t. Two panels arguing over the same page is worse than either one on its own. Pick the one you prefer and turn the other off.
Does it need JavaScript?
Yes. The panel is a set of controls, and without a script there is nothing for them to control. Where scripting is unavailable, nothing is added to the page.
Is it available in my language?
Every string is translatable, and translations arrive through translate.wordpress.org. Contributions are very welcome.
Website LLMs.txt and LLMs-Full.txt Generator is an LLMs.txt generator and llms-full.txt generator for WordPress. It helps site owners generate, manage, preview, validate, and serve AI discovery files from published public content. Use it to create structured /llms.txt and optional /llms-full.txt end
EngageDock AI is a customizable floating contact widget for WordPress websites that want more leads and faster visitor communication. It helps small businesses turn website traffic into calls, texts, emails, and callback requests from one clean contact panel. Key Features: Click-to-Call – One tap ca
Altify AI is an auto ALT text and AI ALT text plugin for WordPress images. It helps generate descriptive image ALT text for accessibility and image SEO. Use bulk image ALT text tools for your Media Library, generate featured image ALT text automatically, and scale WooCommerce image ALT updates with
The Accepted Payment Methods plugin is a straightforward, lightweight solution that enhances your website by displaying visually appealing icons of the payment methods you accept. This plugin is ideal for a variety of websites, including e-commerce platforms, service-oriented websites, and informati