Drupal 8 的辅助功能优势

目前还没有读者喜欢这个。
A network of people

Opensource.com

当 Drupal 7 于 2011 年发布时,它是当时最具辅助功能的开源内容管理系统 (CMS)。 我预计在 Drupal 8 发布之前,情况一直会是这样。 Web 辅助功能需要持续的警惕,并且在任何致力于满足 Web 内容辅助功能指南 (WCAG) 2.0 指南的软件中都需要始终关注。

对于许多出于法律、经济或道德原因而希望使其网站尽可能易于访问的组织来说,这非常有用。

Drupal 与大多数其他 CMS 的不同之处在于,它的重点是提高 Drupal Core 在所有级别(公共、内容编辑器、管理员和开发人员)的辅助功能。 修复 Core 中的问题允许我们从源头修复辅助功能问题,并且它们默认传播到使用的主题和模块。

添加更多语义

最大的辅助功能增强是以 HTML5 和 WAI-ARIA 形式存在的附加语义。 如果使用得当,两者都会增加上下文,这对于使用辅助技术的用户来说很有用。 我们添加了 ARIA 地标和角色。 现在还有一种中心方法可以利用 aria-live,以便在页面上的动态内容更新而无需重新加载页面时,可以提醒屏幕阅读器。

Drupal 7 表单中的一个常见问题是,多部分复选框和单选按钮没有正确地包含在 <fieldset> 元素中。 在 Drupal 8 中,这已被引入到 Forms API 中,以便这些元素可以正确地分组在一起。

Drupal 以其强大的国际化而闻名,但创建可访问的多语言站点是一个真正的挑战! 幸运的是,Drupal 8 在为其扩展的语言支持添加语义方面做了很多工作。

积少成多

对字体大小和颜色对比度进行了许多小的更改,以确保 Drupal 8 主题符合 WCAG 2.0 AA 指南。

许多用户界面中的一个巨大挑战是确保仅从链接文本即可确定每个链接的用途。 在页面上的空间有限的情况下,对于许多 CMS 来说,很难实现这一点。 Drupal 在 Drupal 7 中为某些内容默认添加了此功能,但在 Drupal 8 中进一步扩展了此功能,并且我们正在利用一组常用的视觉隐藏 CSS 类。

整合

有一个倡议是寻找其他开源代码以在 Drupal 中采用。 这被称为“自豪地在其他地方发明”,它对 Drupal 8 的辅助功能和其他项目的辅助功能产生了重大影响。 Drupal 社区推动 jQuery UI 和 CKEditor 改进其辅助功能,然后才采用其代码。

在 Drupal 7 中,我们决定集中处理诸如我们如何解决 CSS display:none; 的可访问替代方案之类的功能。 大约在同一时间,流行的 HTML5 样板也做了同样的事情。 在 Drupal 8 中,我们选择将我们的 CSS 类重命名为更常用的“visually-hidden”,以便已经熟悉该约定的主题制作者更容易使用。

Drupal 8 的另一个重大增强是集中的选项卡管理器。 网站变得越来越复杂,对于仅使用键盘的用户而言,需要有一种方法来堆叠选项卡顺序来管理它。 我们正在后端使用它,但它将可用于所有希望能够确保选项卡顺序符合逻辑的模块和主题。

创作工具

重要的是要记住,可能患有残疾的不仅仅是我们的用户。 尤其是在人口老龄化的时代,辅助功能是组织中各级人员都关心的问题。 Drupal 致力于消除管理级别的辅助功能挑战非常重要。 这也使该 CMS 能够很好地解决新的辅助功能标准——创作工具辅助功能指南 (ATAG)。 ATAG 主要关于帮助内容作者制作更易于访问的内容。

我们在 Drupal 8 中做了一些简单的事情来帮助我们符合 ATAG。 管理员现在可以强制图像上传包含替代文本。 我们还在默认过滤器中打开了 HTML 标题,以鼓励编辑创建更结构化的内容。 但最终,主要是因为 Drupal 的结构方式,我们能够帮助作者使用此界面制作更易于访问的内容。

视图!

Drupal 8 最大的胜利之一是将 Views 引入了 Core。 Views 是 Drupal 7 中最流行和最强大的贡献模块,因此很高兴看到它被纳入 Drupal 8 中。 对于 Drupal 管理员和最终用户来说,这都是辅助功能的重大胜利。 Views UI 已经过清理,使其更具语义性,但我们也为表格视图添加了辅助功能改进。 表格现在支持 HTML5 的标题和描述元素,以及每个单元格都有正确的 id/header 语义。

现在,仍然需要做更多的工作,并且希望能在 Drupal 8 的首次发布之前进入 Core,但即便如此,它现在也远远领先于最接近的竞争对手。 因为 Drupal 是模块化的,所以构建在新 API 上的模块和主题将继承我们构建到 Core 中的许多最佳实践。 请记住,任何这些扩展都可能覆盖最佳实践,因此仍需要改进 Drupal 8 社区贡献的辅助功能。 但是社区标准是在 Core 中设置的,大多数模块都会遵循它们。

开始尝试 Drupal 8

如果您热衷于辅助功能并想尝试 Drupal 8,一个简单的起点是 http://simplytest.me/project/drupal/8.x ,您也可以使用它来测试 Drupal 8 在 http://drupal.org 上贡献的任何模块。

现在有很多很棒的方法可以开始试验 Drupal 8 并为其做出贡献。 Drupal 社区所做的事情仍然非常独特,但其他开源项目肯定可以从中学习和采用。

 

标签
Mike Gifford head shot
Mike Gifford 是 CivicActions 的高级战略家,也是公共部门数字辅助功能的思想领袖。

3 条评论

毫无疑问,Drupal 在 CMS 功能方面不断发展和改进,使其在辅助功能等领域更具启发性和适应性。

然而,Mike Gifford 声称“Drupal 7 是当时最具辅助功能的开源内容管理系统 (CMS)”,甚至对于今天的 Drupal 8 来说也是不正确的,因为 Plone CMS/Portal 长期以来一直具有所有提到的辅助功能,全面的 WAI 和多年的内容工作流的深度粒度。
Plone 中一个完整的面向对象全功能应用服务器,可单独管理和控制所有方面的工作流程 CMS 逻辑广告与多个外部数据源/数据库的直接集成,这一事实清楚地显示了 Plone 相比之下的优势。

不幸的是,PHP/MySQL 领域的许多开发人员倾向于错误地将他们的产品优于其他一些类似的 PHP/MySQL CMS 推断到所有其他 Web 开发 CMS - Portal 平台。

感谢您的评论。 我想承认,我声称 Drupal 7 是最具辅助功能的开源 CMS,这是一个很大的声明。 我不相信有任何针对此事进行过公正的研究,这些研究甚至解决了最流行的 CMS,更不用说了。 如果有独立的审计可以引用,甚至有一个商定的评分机制来判断它们,那就太好了。

Plone 肯定具有早期优势,并且一直是一个结构良好的系统。 我真的不认为它现在被认为是辅助功能领域的领导者。 我可能是错的,而且我肯定有偏见。

在查看几个演示站点时,我注意到仅使用键盘的用户存在一些严重的辅助功能问题。 这只是一种残疾类型,但我只是在做一个非常简短的扫描。

您不能在 1000 字的文章中放入太多细节。 我发布了对 Drupal 8 改进的更详细的描述。

Mike,感谢您分享我们可以期待的 Drupal 8,也感谢您强调 Drupal 如何在内容管理系统领域取得进展。

Creative Commons License本作品采用 Creative Commons Attribution-Share Alike 4.0 International License 授权。
© . All rights reserved.