历史文章 。文中提及的工具和版本以文章发布时为准。

2017 年结束时,我们回顾了 WordPress 的 11 个公开版本和另外 11 个测试版本。无论深入参与还是仅仅关注 WordPress 社区,都能清楚看到它如今庞大的规模。

这些改进大致分为两类:面向开发者,以及面向编辑者。
下面详细回顾 2017 年 WordPress 在这两个发展方向上的变化。

针对以下群体的改进: 开发者

2017 年的改进似乎沿着两条路线展开:一条让开发者的工作更轻松,另一条服务于编辑者。对开发者而言,REST API 的改进至关重要。用户越来越重视网站的速度与灵活性,Headless WordPress 也开始流行,推动 REST API 的重要性不断上升。以下是过去一年 REST API 的主要变化:

  • 2016 年 12 月——WordPress7“Vaughan”加入了文章、分类术语、用户、元数据与设置的 REST API 端点。
  • 2017 年 1 月——发布了 安全更新 ,修复与作者信息有关的问题。
  • 2017 年 4 月——新增REST API 改进 ,支持多个分类术语与用户的查询,以及不同时区的用户。
  • 2017 年 5 月—— 修复 ,使开发者能够同时连接多个端点。
  • WordPress8“Evans”发布,其中包含使用 REST API schema 的基础媒体小工具。
  • 2017 年 8 月——4.8.1 版本发布,包含多项改进 ,涉及 REST API 数据、图片与令牌的处理方式。
  • 2017 年 11 月——WordPress9“Tipton”发布,带来多项自定义器改进,包括全新的Customizer JS API.

针对以下群体的改进: 编辑者

WordPress 创立以来最庞大的任务已经展开,它就是 Gutenberg 项目。

Matias 对 Gutenberg 项目的描述还带有希腊色彩:他将它比作忒修斯之船。

Gutenberg 旨在填补 WordPress 编辑体验中的一个巨大缺口。WordPress 不断发展创新,编辑器却没有同步进步。结果是插件与主题越来越依赖短代码,甚至连简单任务也需要网站开发者介入。

Gutenberg 的目标是让内容创作者更愉快地编辑文字,弥合后台编辑与前台呈现之间的差距,让他们更自由地创作更好的内容。

它的开发汇集了大量社区成员与贡献者。Gutenberg 以插件形式开放给所有人使用,每天下载超过 500 次。2017 年 6 月作为插件发布之前,它已开发了 6 个月,此后又经历了 25 次重要更新。下面逐一回顾:

  • 6 月 16 日:v1.0——首次以插件形式发布。6 月 23 日:v0.2.0——加入区块。
  • 6 月 30 日:v3.0——修复更多格式问题,并添加按钮。
  • 7 月 8 日:v4.0——服务器端修复,并增加 API 支持。
  • 7 月 14 日:v5.0——支持多种浏览器与移动平台。
  • 7 月 28 日:v6.0——增加内容与用户体验相关功能。
  • 8 月 4 日:v7.0——改进无障碍访问与用户界面。
  • 8 月 4 日:v7.1——紧急修复 Jetpack 联系表单。
  • 8 月 11 日:v8.0——增加适用于不同媒体与文字类型的区块。
  • 8 月 18 日:v9.0——改进区块与颜色自定义。
  • 8 月 29 日:v0.0——改进拖放操作与下拉菜单。
  • 9 月 5 日:v1.0——修复并改进区块交互。
  • 9 月 27 日:v2.0——加入字数与区块计数器。
  • 9 月 27 日:v2.1——紧急修复无法点击的区块。
  • 10 月 4 日:v3.0——整理区块的外观与描述。
  • 10 月 10 日:v1.4.0——为可重用全局区块建立初始 REST API 结构。
  • 10 月 24 日:v1.5.0——为现有元框加入原生支持。
  • 10 月 24 日:v5.1——紧急修复 Firefox 中的屏幕尺寸变化问题。
  • 10 月 25 日:v5.2——修复经典内容编辑器的重定向问题。
  • 10 月 31 日:v6.0——改进性能,并支持将经典区块转换为 Gutenberg 区块。
  • 11 月 2 日:v6.1——支持粘贴短代码并自动转换为区块。
  • 11 月 15 日:v7.0——通过过滤器与 hooks 改进区块扩展能力。
  • 11 月 28 日:v8.0——修复并改进短代码处理。
  • 11 月 29 日:v8.1——支持将已发布文章改为草稿。
  • 12 月 11 日:v1.9.0——加入 hooks 与可重用全局 hooks。
  • 12 月 13 日:v9.1——修复 Firefox 与 Yoast SEO 插件相关问题。

这些版本来自社区的巨大协作,逐步造就了今天的 Gutenberg。唯一的争议在于:虽然大家普遍同意需要更好的编辑器,却未就实现方式达成一致。

这种开发方式带来什么?

两个发展方向仍未找到兼顾方式,值得关注。这一年,Chris Lema 曾问:“我们不是想告诉大家,WordPress 不仅仅是博客平台吗?”许多人认为,重做内容编辑器的重点,与 REST API 为开发者开辟的路线形成了明显冲突。

REST API 让开发者能够在移动优先的世界中创造更多创新——理论上面向未来——但 Gutenberg 至少在当时还没有完全兼容 REST API。

Gutenberg 生成的页面包含 CSS 与 JavaScript。因此,开发者必须将 Gutenberg 的 CSS 加入 JavaScript 前端,或自行编写匹配 Gutenberg 样式的 CSS。不少人认为,内联 CSS 是更理想、也更适合 REST API 的解决方式。Gutenberg 团队计划解决这些开发障碍,但截至本文写作时,问题仍未解决。

像一支团队一样

过去一年同样值得关注的,是为了简化开发者与内容编辑者工作流而付出的努力。WordPress 当时支撑着整个网络的 29%,以及前 100 个网站中的 54 个,因此显然需要同时方便开发团队与编辑者。社区再一次像一支团结的大团队共同工作。

WordPress 4.9 为两个群体都带来了有价值的变化,例如将设计修改保存为草稿,以及检查代码修改中的错误。REST API 则让团队有机会把常规 WordPress 安装,转化为 Headless WordPress 网站或渐进式 Web 应用。

走向成熟

如果您关注 WordPress 核心开发者,可能也会注意到 版本发布计划 在过去两年逐渐成熟。2017 年 WordPress 共发布 22 个版本,其中 11 个是测试版或开发者版本。开发团队与以下平台合作,及时、平稳地推出安全与维护更新: HackerOne。他们在社区准备好时才发布更新,并始终先推出 2 至 3 个测试版本。

未来

WordPress 的未来显然更加成熟。每次改进都在为未来技术与数字体验提供支持。更流畅的团队工作流提升了它在企业级应用中的吸引力,而 REST API 与 Gutenberg 则打开了更广泛用途的大门。

在 State of the Word 2017 中,不久前还公布了另一个值得关注的未来项目: Tide 项目,它将自动测试 WordPress 资源库中的每一个插件与主题。同时,官方还宣布与以下平台合作: HackerOne ——一个帮助 WordPress 提升安全防护的黑客网络。

我们期待未来增加更多 REST API 端点,为手机和平板用户带来更多体验创新。当然,我们也希望在 WordPress 5 发布前,解决 Gutenberg 与 REST API 之间的衔接问题。

最后,我们希望 WordPress 将更多依赖插件等第三方方式实现的功能,纳入核心,从一开始便提供丰富功能,减少额外依赖。

可以确定的是,大家都期待精彩的 2018 年,期待我们喜爱的 CMS 带来更多惊喜。

联系 8web