关于 wp-accessibility-review
用于审查 WordPress 主题、区块、插件和管理界面可访问性的代码审查技能。它围绕语义、键盘交互、焦点、表单和界面状态组织检查,并按严重程度给出实用修复建议。
主要功能
- 01检查语义标记与标题层级
- 02审查键盘操作与焦点行为
- 03检查表单标签和错误提示
- 04检查对话框、标签页、菜单和折叠面板
- 05按严重程度列出发现与修复建议
适用场景
- 01审查 WordPress 模板和区块输出
- 02审计管理表单或插件界面
- 03检查交互组件的键盘可用性
- 04发布前验证可访问性实现
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ jorgerosal/ wordpress-skills --skill wp-accessibility-review安装后在 Claude Code 中输入/wp-accessibility-review确认已加载。
附带文件references/interactive-a11y-patterns.mdreferences/semantic-and-form-patterns.md
详细介绍
WordPress 无障碍审查技能
概述
系统地审查 WordPress 主题、区块、插件和管理界面的无障碍性。核心原则: 无障碍性应融入结构、交互和状态变化中,而不是通过零散的 ARIA 补丁来实现。审查内容涵盖语义化标记、键盘行为、焦点管理、标签、错误消息、管理界面交互、区块输出,以及由 JS 驱动的 UI 变化。
何时使用
适用场景:
- 审查主题模板或区块标记
- 审计管理表单或自定义插件 UI
- 检查模态框、标签页、手风琴或菜单交互
- 审查表单标签、错误和焦点行为
- 在发布前验证无障碍实现
不适用于:
- 没有实现背景的纯视觉设计评审
- 仅审查性能或安全性
- 仅根据截图测量颜色对比度
代码审查工作流
-
确定审查对象
- 前端模板
- 区块输出
- 管理界面
- 交互式 JS 组件
-
检查结构语义
- 标题顺序
- 按钮与链接的使用
- 表单标签关联
- 表格和列表语义
-
检查交互行为
- 键盘可访问性
- 焦点可见性及焦点返回
- 必要时使用实时区域或状态消息
- 适用时检查对话框/手风琴/标签页语义
-
判定严重程度
- CRITICAL: 核心操作无法通过键盘访问、必填表单控件没有标签、模态框或菜单以不正确的方式陷住焦点
- WARNING: 语义薄弱、错误关联不佳、误用 ARIA、使用可点击的非按钮元素
- INFO: 可改进标题结构、帮助文本或地标的使用
针对文件类型的检查
模板和标记
- CRITICAL:使用
div/span实现交互元素,却未提供键盘支持 - WARNING:缺少标题结构或地标
- WARNING:表单输入没有标签
- INFO:可使用原生元素,而不是大量依赖 ARIA 的替代方案
JavaScript 交互
- CRITICAL:未将焦点移入模态框,或关闭时未将焦点移回
- WARNING:键盘事件处理不完整
- WARNING:状态变化仅以视觉方式呈现
- INFO:可使用实时区域播报异步更新
区块和管理界面 UI 输出
- WARNING:检查器控件或区块 UI 标签不清晰
- WARNING:管理通知未以适当方式播报
- INFO:可改进空状态的清晰度和辅助文本
用于快速检测的搜索模式(A11Y-21)
使用以下 rg 命令快速扫描代码中的无障碍问题。
CRITICAL 模式
# Click handlers on non-semantic elements
rg -n "<(div|span)[^>]+on(click|key)" . -g '*.{php,html,js,jsx}'
# Form controls without obvious label references
rg -n "<input|<select|<textarea" . -g '*.{php,html}'
# Dialog or modal implementations
rg -n "dialog|modal|aria-modal|role=['\"]dialog" . -g '*.{php,html,js,jsx}'
WARNING 模式
# ARIA usage candidates to inspect manually
rg -n "aria-|role=" . -g '*.{php,html,js,jsx}'
# Button-like links or link-like buttons
rg -n "<a[^>]+href=['\"]#|<button[^>]+onclick" . -g '*.{php,html}'
# Focus management code
rg -n "focus\(|tabindex|keydown|keyup" . -g '*.{js,jsx,php}'
INFO 模式
# Headings and landmark structure
rg -n "<h[1-6]|<main|<nav|<aside|<header|<footer" . -g '*.{php,html}'
参考文件
references/semantic-and-form-patterns.md- 原生语义、标签、错误消息和表单结构references/interactive-a11y-patterns.md- 模态框、菜单、手风琴、标签页、焦点管理和键盘行为
输出格式(A11Y-23)
每项发现都应包含严重程度、文件引用、受影响的用户交互、实现为何存在无障碍问题,以及切实可行的修复方案。优先提供实现方面的指导,而非宽泛的合规表述。
评论
支持 Markdown