{"id":309209,"date":"2026-05-18T06:33:21","date_gmt":"2026-05-18T06:33:21","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/d2i-accessibility-toolkit\/"},"modified":"2026-05-18T07:51:46","modified_gmt":"2026-05-18T07:51:46","slug":"d2i-accessibility-toolkit","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/d2i-accessibility-toolkit\/","author":23493395,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"6.9.4","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"D2i Accessibility Toolkit","header_author":"D2i Technology","header_description":"A floating accessibility widget providing one-click adjustments to support WCAG 2.1 AA + 2.2, ADA Title II\/III, Section 508, and EN 301 549. No external requests. No tracking. All features included free.","assets_banners_color":"c6d0dc","last_updated":"2026-05-18 07:51:46","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/d2itechnology.com","header_author_uri":"https:\/\/d2itechnology.com\/about-us","rating":0,"author_block_rating":0,"active_installs":0,"downloads":23,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"d2itechnology","date":"2026-05-18 07:51:46"}},"upgrade_notice":{"1.0.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon-256x256.png":{"filename":"icon-256x256.png","revision":3535162,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3535162,"resolution":"1544x500","location":"assets","locale":"","width":1500,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3535253,"resolution":"772x250","location":"assets","locale":"","width":750,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3535253,"resolution":"1","location":"assets","locale":"","width":1366,"height":635},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3535253,"resolution":"2","location":"assets","locale":"","width":1366,"height":635},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3535253,"resolution":"3","location":"assets","locale":"","width":1366,"height":635},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3535253,"resolution":"4","location":"assets","locale":"","width":936,"height":536},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3535253,"resolution":"5","location":"assets","locale":"","width":1074,"height":592}},"screenshots":{"1":"Widget trigger button (bottom-right, default position)","2":"Open accessibility panel showing all feature tiles","3":"High-contrast mode active","4":"Admin settings page","5":"Statement generator"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[1953,2682,1956,162],"plugin_category":[34,43],"plugin_contributors":[263325],"plugin_business_model":[],"class_list":["post-309209","plugin","type-plugin","status-publish","hentry","plugin_tags-accessibility","plugin_tags-ada","plugin_tags-wcag","plugin_tags-widget","plugin_category-accessibility","plugin_category-customization","plugin_contributors-d2itechnology","plugin_committers-d2itechnology"],"banners":{"banner":"https:\/\/ps.w.org\/d2i-accessibility-toolkit\/assets\/banner-772x250.png?rev=3535253","banner_2x":"https:\/\/ps.w.org\/d2i-accessibility-toolkit\/assets\/banner-1544x500.png?rev=3535162","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/d2i-accessibility-toolkit\/assets\/icon-256x256.png?rev=3535162","icon_2x":"https:\/\/ps.w.org\/d2i-accessibility-toolkit\/assets\/icon-256x256.png?rev=3535162","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/d2i-accessibility-toolkit\/assets\/screenshot-1.png?rev=3535253","caption":"Widget trigger button (bottom-right, default position)"},{"src":"https:\/\/ps.w.org\/d2i-accessibility-toolkit\/assets\/screenshot-2.png?rev=3535253","caption":"Open accessibility panel showing all feature tiles"},{"src":"https:\/\/ps.w.org\/d2i-accessibility-toolkit\/assets\/screenshot-3.png?rev=3535253","caption":"High-contrast mode active"},{"src":"https:\/\/ps.w.org\/d2i-accessibility-toolkit\/assets\/screenshot-4.png?rev=3535253","caption":"Admin settings page"},{"src":"https:\/\/ps.w.org\/d2i-accessibility-toolkit\/assets\/screenshot-5.png?rev=3535253","caption":"Statement generator"}],"raw_content":"<!--section=description-->\n<p><strong>D2i Accessibility Toolkit<\/strong> injects a floating accessibility panel into the front-end of any WordPress site. Visitors can activate assistive adjustments in a single click without needing to change their browser or operating system settings.<\/p>\n\n<blockquote>\n  <p><strong>Important notice:<\/strong> This plugin helps users customise their browsing experience. It does <strong>not<\/strong> automatically make your website fully compliant with WCAG, ADA, Section 508, or EN 301 549. Website owners remain responsible for ensuring their content (semantic HTML, image alt text, captions, heading structure, and color contrast in their own designs) meets applicable standards.<\/p>\n<\/blockquote>\n\n<h4>Features<\/h4>\n\n<ul>\n<li><strong>Contrast modes<\/strong> \u2014 Dark, Light, High Contrast (cycle through)<\/li>\n<li><strong>Highlight Links<\/strong> \u2014 high-visibility outlines and backgrounds on all links<\/li>\n<li><strong>Bigger Text<\/strong> \u2014 100 % \u2192 120 % \u2192 140 % \u2192 160 % \u2192 180 % \u2192 200 % (rem-based, reflows correctly)<\/li>\n<li><strong>Text Spacing<\/strong> \u2014 applies WCAG 1.4.12 exact values (line-height 1.5, letter-spacing 0.12 em, word-spacing 0.16 em, paragraph spacing 2 em)<\/li>\n<li><strong>Pause Animations<\/strong> \u2014 stops CSS animations\/transitions; pauses <code>&lt;video autoplay&gt;<\/code>; respects <code>prefers-reduced-motion<\/code> automatically<\/li>\n<li><strong>Hide Images<\/strong> \u2014 hides img\/picture\/SVG; injects alt text as visible text nodes<\/li>\n<li><strong>Dyslexia Friendly<\/strong> \u2014 applies OpenDyslexic font (bundled locally, no CDN), increases line-height and letter-spacing<\/li>\n<li><strong>Big Cursor<\/strong> \u2014 64 px white or black cursor SVG, locally bundled<\/li>\n<li><strong>Line Height<\/strong> \u2014 Default \u2192 1.5 \u2192 1.75 \u2192 2.0 \u2192 2.5<\/li>\n<li><strong>Text Alignment<\/strong> \u2014 Default \u2192 Left \u2192 Centre \u2192 Right (justify excluded per WCAG 1.4.8)<\/li>\n<li><strong>Reset All<\/strong> \u2014 one click restores defaults, clears LocalStorage<\/li>\n<\/ul>\n\n<h4>Compliance support<\/h4>\n\n<p>The widget provides user-facing adjustments that support meeting:<\/p>\n\n<ul>\n<li><strong>WCAG 2.1 Level AA<\/strong> (all applicable SCs)<\/li>\n<li><strong>WCAG 2.2<\/strong> new SCs (2.4.11 Focus Not Obscured, 2.5.8 Target Size \u2265 44 \u00d7 44 px, 3.2.6 Consistent Help)<\/li>\n<li><strong>ADA Title II \/ III<\/strong><\/li>\n<li><strong>Section 508 Refresh<\/strong><\/li>\n<li><strong>EN 301 549<\/strong><\/li>\n<\/ul>\n\n<h4>Privacy<\/h4>\n\n<ul>\n<li><strong>No external requests<\/strong> \u2014 all fonts, cursors, and icons are bundled locally<\/li>\n<li><strong>No tracking, no analytics, no phone-home<\/strong><\/li>\n<li>User preferences are stored in <strong>browser LocalStorage<\/strong> only \u2014 no cookies, no database writes<\/li>\n<\/ul>\n\n<h4>Widget accessibility<\/h4>\n\n<p>The widget itself is fully accessible:<\/p>\n\n<ul>\n<li>All controls are semantic <code>&lt;button&gt;<\/code> elements<\/li>\n<li>Color contrast \u2265 4.5:1 within the widget<\/li>\n<li>Touch targets \u2265 44 \u00d7 44 px<\/li>\n<li>Keyboard navigable; focus trapped while panel is open; Escape to close<\/li>\n<li>Full ARIA: <code>role=\"dialog\"<\/code>, <code>aria-modal<\/code>, <code>aria-labelledby<\/code>, <code>aria-pressed<\/code>, <code>aria-expanded<\/code>, <code>aria-live<\/code><\/li>\n<li>Tested with NVDA, JAWS, VoiceOver, TalkBack<\/li>\n<li>Widget is never affected by its own filters (invert\/saturation are counter-filtered on the widget container)<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>d2i-accessibility-toolkit<\/code> folder to <code>\/wp-content\/plugins\/<\/code><\/li>\n<li>Activate the plugin from <strong>Plugins \u2192 Installed Plugins<\/strong><\/li>\n<li>Go to <strong>Settings \u2192 D2i Accessibility<\/strong> to configure the widget<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"where%20does%20the%20opendyslexic%20font%20come%20from%3F\"><h3>Where does the OpenDyslexic font come from?<\/h3><\/dt>\n<dd><p>OpenDyslexic is an open-source font licensed under the SIL Open Font Licence. <code>OpenDyslexic-Regular.woff2<\/code> and <code>OpenDyslexic-Bold.woff2<\/code> are downloaded from <a href=\"https:\/\/opendyslexic.org\">opendyslexic.org<\/a> and bundled in the <code>public\/fonts\/<\/code> directory \u2014 no CDN or external request is made.<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20make%20my%20site%20wcag%20compliant%3F\"><h3>Does this plugin make my site WCAG compliant?<\/h3><\/dt>\n<dd><p>No. Accessibility overlays and toolkits are a supplemental aid, not a substitute for accessible design and content. You must still ensure your site's HTML is semantic, images have alt text, videos have captions, and your color scheme meets contrast requirements.<\/p><\/dd>\n<dt id=\"where%20are%20user%20preferences%20stored%3F\"><h3>Where are user preferences stored?<\/h3><\/dt>\n<dd><p>Browser LocalStorage under the key <code>d2i_a11y_user_prefs<\/code>. No data is sent to a server.<\/p><\/dd>\n<dt id=\"is%20this%20plugin%20gdpr-friendly%3F\"><h3>Is this plugin GDPR-friendly?<\/h3><\/dt>\n<dd><p>Yes. It makes no external requests, sets no cookies, and stores no personal data on the server.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<\/ul>","raw_excerpt":"Floating accessibility widget with one-click WCAG 2.1\/2.2, ADA, Section 508 &amp; EN 301 549 adjustments. Free, no upsells, no external requests..","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/309209","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=309209"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/d2itechnology"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=309209"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=309209"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=309209"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=309209"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=309209"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=309209"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}