Block Accessibility Checks 2.1 is out—see the full changelog below.
Added
- Issue categorization system: New
categoryfield in check registration to distinguish between “accessibility” and “validation” issues - Enhanced UI organization: Inspector panel now displays errors and warnings in consolidated panels with sub-headings for “Accessibility” and “Validation” categories
- CSS custom properties: Centralized color system with semantic variable names for consistent theming:
--a11y-red: Primary error color (#d82000)--a11y-yellow: Primary warning color (#dbc900)--a11y-light-red: Error background color (#ffe4e0)--a11y-light-yellow: Warning background color (#fffde2)--a11y-border-width: Standardized border width (3px solid)
- Modular SCSS architecture: Improved stylesheet organization with separate files for panel messages and block icons
- Modern Sass syntax: Migrated from deprecated
@importto@usestatements for better performance and maintainability - Enhanced settings page labels: Improved user-friendly labels for accessibility checks in the settings page with category-based descriptions
- Refined inspector panel layout: Better visual organization of accessibility and validation messages with clear sub-headings
- Advanced external plugin detection: New automatic plugin detection system that identifies external plugins by analyzing their file structure and plugin headers
- Plugin information caching: Performance optimization with intelligent caching of plugin metadata to avoid repeated file system operations
- Enhanced settings page organization: External plugins now display with their actual names, versions, and unique slugs for proper separation
- Consolidated documentation: Merged duplicate integration guides into a single comprehensive external integration document
- Settings page redesign: Complete overhaul of the admin settings interface with modern, accessible design and improved user experience
- Unified settings page layout: New shared rendering system that eliminates code duplication and provides consistent layout across all settings pages
- Enhanced form controls: Improved radio button and checkbox styling with semantic CSS classes for better accessibility and visual consistency
Changed
- BlockChecksRegistry API: Enhanced
register_check()method to accept optionalcategoryparameter (defaults to ‘accessibility’) - JavaScript validation pipeline: Updated to pass category information from PHP registry to frontend validation
- UI display logic: Consolidated error/warning display into two main panels with conditional sub-headings
- CSS architecture: Refactored styles to use custom properties for improved maintainability and theme support
- Default check categorization: Core button checks now categorized as “validation”, image and table checks as “accessibility”
- Inspector panel title: Updated panel title from “Accessibility Check” to “Accessibility & Validation” for better clarity
- Settings page interface: Enhanced check label generation to provide more descriptive and user-friendly names
- External plugin settings grouping: Improved logic to properly separate external plugins based on actual plugin metadata rather than namespace-derived names
- Plugin slug generation: Enhanced to use actual plugin directory names and names for unique identification, preventing conflicts between plugins with similar namespaces
- Settings page architecture: Refactored SettingsPage class with logical function organization and improved code maintainability
- Form rendering system: Consolidated duplicate radio button rendering logic into shared methods, reducing code duplication by ~50 lines
- HTML structure: Updated settings page markup to use semantic HTML elements and improved accessibility attributes
Fixed
- Sass deprecation warnings: Resolved build warnings by migrating from
@importto@usesyntax - UI structure issues: Fixed conditional rendering logic for error and warning panels
- Data flow consistency: Ensured category information properly flows from PHP registry to JavaScript validation
- README documentation errors: Fixed various documentation issues and improved clarity
- External plugin grouping issues: Fixed problem where multiple external plugins were incorrectly grouped together in the same settings page
- Plugin name display: Resolved issue where external plugins displayed derived names instead of actual plugin names
- Settings page slug conflicts: Fixed potential conflicts when multiple plugins use similar namespaces by implementing unique slug generation
- Code duplication: Eliminated redundant rendering methods and consolidated shared functionality for better maintainability
- Site editor compatibility: Fixed issue where the plugin would prevent the WordPress site editor from loading by implementing proper editor context detection
- Post type compatibility: Resolved issue where accessibility checks only worked on ‘post’ post type by using proper screen detection instead of restrictive post type checking
- Security compliance: Fixed PHPCS security warning by using WordPress’s built-in
get_current_screen()function instead of directly accessing$_GETparameters - Editor context detection: Improved JavaScript editor detection to properly distinguish between post editor and site editor contexts using WordPress data stores
- Settings page checkbox state: Fixed issue where heading level checkboxes were not properly displaying checked state due to malformed HTML attribute construction
Leave a Reply