Features as Plugins模型在3.7中引入,作为开发WordPress中包含的功能的方式 核心 核心是运行WordPress所需的一组软件。 核心开发团队构建WordPress。 此模型允许在将功能视为合并候选项之前,对其进行构建、测试、优化和抛光。 可以跟踪正在进行的插件功能 在Make WordPress核心博客的专用页面上 .
社区成员或新贡献者(例如您自己)可以为新的 功能插件 一个插件,其创建目的是最终被提议包含在WordPress Core中。 请参见 作为插件的功能 . 在 功能插件聊天 ,通常在新发布周期开始时保持。
聊天是为了提出你的想法,并计划在发展中发挥积极的主要作用。 其他对你的想法感兴趣的贡献者可以加入进来。 聊天的日期和时间是 在帖子中宣布 上 Make/Core博客 ,意见以简短提案的形式添加到评论中:
你的功能插件提案的简要概述(一段)。
电流 插件 插件是一个包含一组功能的软件,可以添加到WordPress网站。 他们可以扩展功能或为WordPress网站添加新功能。 WordPress插件是用PHP编程语言编写的,并与WordPres无缝集成。 这些可以在WordPress.org插件目录中免费 https://wordpress.org/插件/ 或者可以是第三方基于成本的插件 状态(想法阶段、规划阶段、正在开发、现有功能插件、先前的工作等)。
一份涉及或已经对你的功能插件感兴趣的人(包括你)的列表。
你想要什么帮助(范围界定、规划、线框、开发、设计等)。
功能插件开发阶段允许进行实验,根据插件的复杂性,可能需要多个发布周期才能完成,然后才能作为合并候选项提交给核心团队。
如果没有实验,一些想法可能无法发展成为潜在的功能。 但实验也可能导致一个完整的、甚至完全开发的特性永远不会成为核心,因为在仔细分析了细节之后,它意识到该特性不属于核心。
不要因此而气馁——试用和错误是过程的一部分,它将带来更好的功能和更好的WordPress。 没有包含在核心中的功能可以继续作为很棒的插件存在,并且整个生态系统都会受益。 过去,核心团队会建议一个功能从插件开始; 这个过程现在已经正式化了。
最终,一个特性是否成为核心的决定权在于核心团队。 为了确保你在正确的轨道上,请与主要开发人员和即将到来的开发人员保持联系 释放引线 社区成员最终负责发布。 确保他们了解你要解决的问题,以及为什么你选择的方向是解决该问题的合适方向。
对于要包含在发布中的功能插件,它们必须 提出 在发布开始时,准备在合并窗口的开始处进行合并。 届时,发布负责人将审查当前的功能插件,并与核心开发人员一起确定它们是否已经完全成熟并准备好合并到核心中。
发布负责人将寻找很多东西(参见下面的清单),包括强大且经过良好测试的用户体验、完整的设计、来自社区的积极反馈、核心质量代码、没有重大错误或问题,以及相信该功能属于WordPress核心。 每个功能都是不同的,因此“就绪”根据具体功能的不同意味着不同的东西。 最终,发布负责人必须能够轻松地承担功能的主要责任,核心团队必须能够轻松承担长期责任。
如果核心开发人员认为某个特性还没有准备好进行核心开发,他们会让特性负责人知道原因,以及可以做什么来为将来的版本准备该特性。
已批准包含的功能将具有 大约两周的合并窗口 让他们的代码进入核心,并与任何潜在的问题进行斗争,使其合并。 然而,如上所述,在合并窗口开始时,功能必须准备好进行合并。
在将功能合并到核心后 功能团队仍负责 以获得核心团队的额外支持。 与WordPress的任何部分一样,反馈将来自整个社区,尤其是在一个功能合并到核心之后。 增加的可见性要求功能团队更加专注于确保功能发布。
请记住,虽然团队仍然负责核心功能, 最终决策权掌握在核心团队手中 就像核心的任何部分一样。 发布负责人将与功能负责人和整个团队紧密合作。
下面是一个功能插件团队在开发要合并到核心中的插件时应该满足的一些要求的列表。 请记住,每个功能都是不同的,要求也会有所不同。
插件存在于 官方WordPress插件库 定期更新,并由社区使用/测试。
每周聊天 正在发生 松弛(Slack) Slack是一个协作群聊平台 https://slack.com/ WordPress社区在 https://make.wordpress.org/chat/ . ,功能主管将参加每周的核心开发聊天。
A类 启动柱 和 定期更新帖子 公开发布,跟踪功能插件的进度和主要决策。
该功能适用于所有 WordPress官方支持的浏览器 .
触摸设备可以毫无障碍地使用整个功能,所有设备上所有新接口的主要流量都可以通过视觉记录 品牌/流量 。通过询问 Flow团队 来审查它。
将旧流与新流进行比较的可视化记录 为任何更改或替换现有接口的功能提供。
该代码符合 WordPress编码标准 .
同样,代码经过了良好的测试 单元测试 .
代码有很好的文档记录。 (请务必询问 内联文档团队 进行审查。)
代码遵循 插件安全最佳实践 ,并已接受安全审计。
用户界面/体验已通过用户测试进行了测试,并纳入了适当的反馈。 (确保并询问 设计团队 进行审查。)
该设计反应灵敏,可在任何移动设备上正确显示,并使用可用于hi-dpi/视网膜显示的图形。
HTML格式 超文本标记语言。 主要用于在web浏览器中输出内容的语义脚本语言。 验证为正确的doctype。
代码包含所有正确的 挂钩 在WordPress主题和开发中,钩子是可以应用于WordPres中的动作或过滤器的函数。 操作是在WordPress中发生特定事件时执行的功能。 过滤器允许您修改某些功能。 用于挂钩筛选器和操作的参数看起来相同。 本地化到位。 (请务必询问 Polyglots团队 进行审查。)
WordPress继续运行,该功能仍然可用 JavaScript脚本 JavaScript或JS是一种面向对象的计算机编程语言,常用于在web浏览器中创建交互效果。 WordPress广泛使用JS以获得更好的用户体验。 当PHP在服务器上执行时,JS在用户浏览器中执行。 https://www.javascript.com/ . 关闭。
该功能只需一个键盘即可使用。
任何必需的 可达性 无障碍(通常缩写为a11y)是指为残疾人设计产品、设备、服务或环境。 无障碍设计的概念确保了“直接访问”(即无人协助)和“间接访问”,即与个人的辅助技术(例如计算机屏幕阅读器)兼容。 ( https://en.wikipedia.org/wiki/Accessibility网站 ) 添加了支持,包括(但不限于)屏幕外文本、ARIA和 JS公司 JavaScript是一种通常在浏览器中执行的web脚本语言。 通常用于高级用户界面和行为。 -协助。 (请务必询问 无障碍团队 进行审查。)
A类 合并建议 已在上发布 Make/Core博客 一旦插件准备就绪。
确保功能插件在功能合并后立即停止。 这意味着插件不会 因致命错误中断 代码从插件合并到核心之后。 (使用 (类|函数)_exists()
例如。)
如果使用其他插件的代码, 确保没有冲突 功能合并后使用该插件。
上次更新时间: 2018年2月7日
手册导航