有了JavaScript和更新的,更精简的有了所有框架取得的进步,有时很容易忘记 WordPress 仍然依赖于老化的 jQuery 库。官方 WordPress 目录中的数千个插件和主题也是如此。

对于某些人来说,这可能感觉像是回到了 2000 年代中期,那时 JavaScript 非常像狂野的西部。 jQuery 解决了许多编程语言无法满足开发人员需要完成的问题。

Aaron Jorbin 四年前创建的一张票终于实现了 jQuery,用于将 WordPress 移动到最新的 3.x 分支。但是,WordPress 开发团队需要分阶段进行此过渡,尤其是在等待了这么长时间之后。

WordPress 在保持 jQuery 更新方面落后。对于一个通常意味着用户需要运行最新最好版本的平台,奇怪的是 WordPress 本身并没有对它所依赖的第三方代码做同样的事情。 WordPress 目前捆绑了 jQuery 版本 1.12.4,这是 2016 年发布的库版本。它也是支持 Internet Explorer 6、7 和 8 的版本。

WordPress 首席开发人员 Andrew Ozz 在谈话时说关于平台落后的原因:“主要是因为近年来重心转移到了其他/更现代的JavaScript库上。”贡献 JavaScript 的开发人员数量有限且需求量很大。”

从长远来看,他说未来的一个选择可能是将 WordPress 管理员完全转移到原生(原始)JavaScript,这是他的观点在发布公告的评论中分享。更新与 WordPress 捆绑在一起的 jQuery 版本。“这将是巨大的,而且将需要付出很多努力,”他说。

主题和插件太多依靠这个版本的 jQuery 移动得更快。虽然插件可以选择用最新版本覆盖 WordPress 核心捆绑版本的 jQuery,但主题没有这个选项。官方主题目录指南要求主题必须使用核心捆绑脚本(包括 jQuery)。这样做有一个很好的理由:在大多数情况下,它确保与核心和第三方插件的兼容性。

但是,是时候继续前进了。

开发人员用户需要了解

WordPress 有一个更新 jQuery 的三阶段计划。核心团队要求主题和插件开发人员开始使用 Test jQuery Updates 插件。这将帮助他们在整个过渡期间使代码保持最新。

此过程的第一步是从今天早些时候发布的 WordPress 5.5 中删除 jQuery Migrate 1.4.1 脚本。此版本的 jQuery Migrate 使旧代码兼容并帮助开发人员迁移到 jQuery 1.9+。

此举无疑会破坏一些插件和主题。核心团队已启用 jQuery Migration Helper 插件以供最终用户使用。 “它打算在更新到 5.5 后遇到 jQuery 问题的网站上运行,”Ozz 说。 “它通过重新启用 jQuery Migrate 并向网站管理员显示有关使用过时/过时的 jQuery 函数的警告来工作。”

长期目标是让开发人员更新他们的扩展。与此同时,这个插件应该可以缓解一些问题。

Oz 说开发人员现在需要做的最重要的事情是确保他们正在针对 WordPress 5.5 测试他们的扩展。 “理想情况下,应该更多地关注所有遗留的基于 jQuery 的脚本,并确认它们仍然按预期运行,”他继续说道。 “在几乎所有情况下,修复都是微不足道的。”

在 WordPress 5.5 之后,事情将开始成形。暂定计划是更新到最新版本的 jQuery 并添加最新版本的 jQuery Migrate 作为 WordPress 5.6 版本的一部分。

“同样,Migrate 将用于帮助更新基于 jQuery 的脚本,并在插件和主题更新时作为向后兼容性‘修复’,”Ozz 说。 “WordPress 5.6 中的 Migrate 版本将有所不同,因为它对应于最新的 jQuery 版本。它与首次添加时的功能相同,但现在将帮助核心、插件和主题从 jQuery 1.12.4 更新到 3.5。1 (或更高)。”

该过程的第三步是再次从 WordPress 中删除 jQuery Migrate。此更改是 WordPress 5.7 的临时计划,将在 2021 年之前发布。最终目标是去除对 Migrate 的依赖并将最新版本的 jQuery 运送到某一天(可能是很远的将来)可能不再需要与 WordPress 捆绑在一起。

“根据 jQuery 团队的最佳实践和建议,Migrate 应该用作辅助工具,而不是永久性的向后兼容解决方案,”Ozz 说。 “理想情况下,WordPress 能够做到这一点。”

像这样:

喜欢加载...

资源