Releases: GTNeill/wpcalendarcats
Release list
v2.1.3 — SVG toolbar icons (final contrast issue)
Clears the last critical issue the scanner reported: 7 elements under "text and background colour combinations meet the 4.5:1 AA contrast ratio".
The count did not move between 2.1.1 and 2.1.2, which ruled out the count badges fixed in 2.1.2. Enumerating every glyph-only visible node found exactly 7 that a contrast checker cannot evaluate: the six toolbar icon buttons and the emoji magnifier in the search box.
These were never real failures. Measured directly, the icon buttons are 5.24:1 in light mode and 6.2:1 in dark, both clearing 4.5:1. But a glyph is a character, not a shape, so axe returns "unable to determine" rather than pass, and the node stays on the report permanently. No colour change can clear it.
So the characters are gone. Back, forward, refresh, text-size, light/dark and the search magnifier now render inline SVG, aria-hidden, with the accessible name still coming from the aria-label each button already carried. With no text node, the contrast rule no longer applies. SVG also renders identically across platforms, which the glyphs did not.
Category emoji are now aria-hidden too — the category name always sits beside the icon, so screen readers were announcing "classical building, Ward Office".
Verified on the live event feed across light, dark, desktop and mobile: zero violations and, for the first time, zero indeterminate nodes. Glyph-only nodes exposed to checkers went from 7 to 0.
No visual change is intended. Note this fix is inferred rather than confirmed against the vendor's own element list, which is paywalled.
Download wpcalendarcats.zip below, or update in place from Plugins.
v2.1.2 — Scanner-reported accessibility fixes
Clears the two critical issues a third-party scanner still reported on the live page running 2.1.1. Both are real, and one was introduced by 2.1.1.
Focus order semantics (10 elements). The scrollable category lists got tabindex=0 and role="group" in 2.1.1. group reads correctly, but a focusable scroll container is only permitted to be application, main or region — so all ten lists traded one failure for another. They are now role="region", which keeps the accessible name and satisfies both rules.
Colour contrast (7 elements). These were nodes axe reports as indeterminate rather than failing, because the content is a single digit or a lone glyph. Measured by hand, two genuinely failed: the event count badge painted a hardcoded white number on the raw category colour, giving 4.32:1 on the mid greens and 3.54:1 on the greys against a required 4.5:1.
The badge number now uses a new --wpcc-cat-fg, computed at render time against the colour the badge actually paints. White is kept wherever it already passed, so most badges look unchanged; where it did not, the category colour is darkened toward black rather than dropping to a flat black. Worst case across all 17 live categories is now 4.53:1.
Count badges also read as "5 events" instead of a bare "5" to screen readers.
Verified at zero violations with focus-order-semantics enabled, across light, dark, desktop and mobile, using the live site's real event feed.
Download wpcalendarcats.zip below, or update in place from Plugins if you are already on 2.1.0 or later.
v2.1.1 — Accessibility fixes
Fixes every colour-contrast and keyboard-reachability failure axe-core found on a live WordPress page running the plugin: 505 violations down to 0.
- Muted and faint palette tokens re-measured against the darkest surface they are painted on, in both light and dark themes.
- Chip time labels use the body text colour instead of the muted token over the category tint (156 nodes, the biggest single cause).
- Out-of-month day numbers no longer rely on 0.4 opacity.
- Category colours are admin-editable data, so text painted in a category colour is now corrected at render time against the surface behind it, via a new --wpcc-cat-text. Borders and backgrounds keep the raw colour.
- Category card lists that overflow are now keyboard scrollable (tabindex, role and label). Only lists that actually overflow get a tab stop.
Download wpcalendarcats.zip below and install it through Plugins → Add New → Upload Plugin.
v2.1.0 - Zoom control restored + update notifications
Content zoom control, restored
The zoom control that disappeared in the 2.0.0 rewrite is back. v1 embedded the hosted calendar in an iframe and inherited that app's slider for free; once the plugin started rendering the calendar itself, nothing reimplemented it.
The hosted app floats a fixed-position vertical slider against the viewport edge. That can't work inside a WordPress page — a fixed control would sit on top of your theme's own content and follow the visitor down the entire page rather than staying with the calendar. So the same control lives inline in the toolbar here.
- Toolbar control:
[-] [slider] [+] [100%], where the percentage doubles as a reset button. - Range matches the hosted app exactly: 75% to 150% in steps of 5, default 100%.
- Scales the calendar body only, so the toolbar doesn't move out from under the pointer as you click.
- The level survives a view switch, a filter change and a feed refresh.
- Card heights are re-measured after every change, so the four-event cap stays correct at any zoom.
- Keyboard operable and screen-reader labelled. Below 640px the slider hides and the -/+ buttons carry it.
- New "Content zoom control" setting and a
zoom="no"shortcode attribute to hide it.
Update notifications
The plugin now tells WordPress where to look for new versions, so future releases appear on the Plugins and Updates screens with a working Update button instead of needing a manual re-upload.
- Checks this repository's releases at most twice a day.
- Nothing installs on its own — you still click Update.
- Adds a "Check for updates" link under the plugin on the Plugins screen.
- The "View details" popup now shows release notes instead of failing against wordpress.org.
Installing this one
This release has to be installed by hand, since the copy currently on your site predates the update channel. Upload wpcalendarcats.zip below via Plugins - Add New - Upload Plugin and choose "Replace current with uploaded". From 2.1.1 onwards it'll offer itself in the admin.
WP Calendar Categories
This plugin reads events from a Google Calendar and categorizes them into color-coded cards with filters for ease of use.