在本周末 WordCamp US 的贡献者日期间,Matt Mullenweg 再次呼吁 WordPress 的 Make 团队在开发核心新功能时采用插件优先的方法。 他复兴了规范插件的概念,该概念于 2009 年首次引入 WordPress 社区,作为向用户提供可选功能的一种手段,比常规插件更有信心:
规范插件将是社区开发的插件(多个开发人员,而不仅仅是一个人),并通过最高级的执行来解决最流行的功能请求。 这些插件将是 GPL 并存在于 WordPress.org 存储库中,并将与 WordPress 核心密切相关。 核心和这些插件之间将存在非常紧密的关系,以确保 a) 插件代码是安全的,并且是编码标准的最佳示例,以及 b) 新版本的 WordPress 将在发布之前针对这些插件进行测试 确保兼容性。 WordPress 管理员的插件部分将有一个屏幕,以将这些规范插件作为一种编辑选择或经过验证的保证。 这些插件在兼容性、安全性和支持方面将是核心 WordPress 的真正扩展。
Jen Mylo – 规范插件(说什么?)
WordPress 插件目录距离超过 60,000 个(在发布时)只有一个插件。与规范插件的想法相反,就用户对插件作者的期望而言,官方目录仍然像狂野的西部。 Mullenweg 列举了几个对用户来说并不理想的插件场景——例如一个插件由一家公司控制并演变为更接近专业版或删除以前免费的功能并将其置于升级之后。
规范插件旨在为作者的动机可能不会将用户放在首位的插件提供值得信赖的替代方案。它还为核心贡献者提供了一个途径来展示他们想要在 WordPress 中登陆的功能的需求。 MP6、Gutenberg 和 REST API 等一些项目已将这条路径带入核心。
“我们已经到了这样一个地步,即核心需要更多地进行编辑,并对像有时那样临时出现的功能说‘不’,我希望更多的 Make 团队以此为契机,通过以下方式影响 WordPress 的未来一种插件优先的方法,为他们提供了更快的开发和发布周期(而不是每年三次)、更少的审查开销以及在插件获得巨大成功时进入核心的途径,”Mullenweg 说。
“我非常清楚,当人们的目标是在核心中拥有某些东西时,‘不’或‘现在不’可能会令人沮丧,有时会造成人为的压力,在它准备好之前将其放入,正如我相信在 REST API 中发生的那样WP 4.4。”
在一篇引发关于规范插件重新讨论的相关帖子中,Mullenweg 权衡了有争议的 WebP 默认提案,该提案最近收到了 WordPress 主要开发人员的新反对意见。贡献者一直在狂热地工作,以便及时修改他们的方法以适应 6.1。
Mullenweg 推荐这些新功能作为规范插件途径的主要候选者,这表明它将为 WebP 周围的生态系统提供更多时间成熟:
我对支持新格式和提高性能很感兴趣,但我认为当用户升级到 6.1 时默认情况下会向用户推送这种更改,包括操作系统仍然围绕 webp(和 HEIC! ) 文件。
我很高兴支持为 webp 和 HEIC 文件工作以保持核心,因为我们应该自由地接受和使用什么,而不是在上传 JPEG 时将所有内容转换为 webp 的更改。
性能团队计划在明天的预定聊天中讨论这个问题。目前尚不清楚最近的 WebP 默认努力是否会被置于规范插件状态,或者它的某些部分是否仍会出现在 6.1 中。
对更多规范插件的呼吁反应不一,因为一些人立即意识到这些插件的维护者负担增加。
“WP 只需要克服它对可选功能的厌恶,”WordPress 开发人员 Jon Brown 说。 “可以启用/禁用的功能。 ‘Decisions not options’ 是一种很好的精神,因为它是为了让用户保持简单,但它似乎已经被 Gutenberg UX 抛到了窗外,并在讨论向设置页面添加简单的选项时变成了公理。”
iThemes 赞助的贡献者 Timothy Jacobs 表示,他不一定支持向 Core 添加更多选项,但认为规范插件可以以与选项类似的方式呈现。
“这并不意味着 UI 必须只是在插件目录中搜索你想要的东西,”Jacobs 说。 “规范插件可能会暴露在‘类似设置’的 UI 中。我认为导入方法有点隐藏在工具菜单中,但可能是这样的。”
核心贡献者 Torsten Landsiedel 表示,规范插件和功能插件之间的区别并不清楚。区别可能在于规范插件包括那些可能永远不属于核心但对用户仍然很重要的插件。
“听起来‘WordPress importer’插件可能是一个规范的插件,”Landsiedel 说。 “不确定这是否是*蓬勃发展*插件的好例子。不支持特色图片,与大量帖子/媒体作斗争等。
“有用的 Health Check 插件很难帮助失踪的人。
“我们如何防止那些插件(不管叫什么)没有得到足够的贡献者?我认为导入器是一个至关重要的工具,但在核心中也不是必需的(如果需要,我可以安装它,没关系)——但它应该可以工作,但目前它不能很好地工作。但我没有看到开发社区有多大兴趣帮助解决这个问题(可能是因为他们使用 WP CLI 并且不关心这个插件?)
WordPress 核心贡献者 Colin Stewart 表示,虽然他同意将功能作为插件首先对新功能有用,但它需要“比‘失控成功’更好的指标才能包含在核心中。
“某些功能对于稳定性很重要,可以保护用户免受在网站生命周期内多次让他们头疼的问题的影响,但用户可能不会想到在插件存储库中搜索或安装,”斯图尔特说。 “回滚就是这样一个功能,站点健康、隐私导出/擦除等也是如此。
“提案的正式决策过程将非常有帮助。这个话题现在经常出现。”
Mullenweg 为 Make 团队可以考虑的规范插件提供了近两打想法,并建议团队自己可能会提出更好的想法。想象一下所有这些新功能正在发挥作用,这就像管理创新的复兴。这是一个令人兴奋的前景,只要插件以易于采用的方式呈现,就可以使 WordPress 用户受益。对此想法的早期评论者对缺乏维护者提出了合理的担忧,因为历史表明对一些现有规范插件的支持有些不完整。
“我希望它在贡献者日及以后引发讨论,讨论我们如何更好地利用插件来提高 WordPress 的发展速度,保持核心轻、快速和固执己见,并在对更多想法和实验说‘是’的同时做到这一点, ”穆伦韦格说。