球正在进行九年的努力,将 BuddyPress 的自定义 URI 解析器迁移到使用 WordPress 的 Rewrite API。
BuddyPress 目前要求网站使用 漂亮的永久链接 为了与其 URL 解析器兼容。 该插件会分析您正在查看的任何组件的 URL,并执行内部检查以确定在那里显示的内容并确定正确的模板文件。 这个自定义解析器多年来一直运行良好,但与 WordPress 较新的 Rewrite API 相比存在一些缺点。
BuddyPress 首席开发人员 Boone Gorges 在原文中总结了这个问题 票:
BP 的自定义 URI 解析器(主要存在于 bp_core_set_uri_globals() 中)速度慢、容易出错、不可扩展、不可测试,并且不符合 WP 最佳实践。
2021 年 8 月,BuddyPress 的贡献者将这项工作转移到 BP 重写 功能插件,最终目标是在更广泛的测试后将其合并到 BP Core。 第一个测试版是 发布 本周呼吁在将其移至 WordPress 插件目录之前进行测试。
BP Rewrites 不仅是对 BuddyPress 的底层架构改进,它还具有几个面向用户的好处:
- BuddyPress URL 定制改进和更容易
- 与普通永久链接的兼容性
- 提高对 WordPress 标准的合规性
- 改进的用户/高级用户/插件开发人员/主题设计师 BuddyPress 体验
测试插件的用户会在 BuddyPress 设置下找到一个 URL 自定义屏幕(替换 BP 页面屏幕),可以轻松更改页面 slug。 这比编辑 wp-config.php 文件更加用户友好。
“当您停用插件时,buddypress 帖子类型的项目将切换回常规页面,然后您将它们返回到相应的 WordPress 管理编辑屏幕,”BuddyPress 核心开发人员 Mathieu Viet 说。 “如果您想要激活 BP Rewrites 回溯,帖子元数据仍然存在(当您正在测试另一个 BuddyPress 插件时可能会发生这种情况)。 如果您绝对想摆脱这些帖子元数据,您可以删除 BuddyPress 页面,创建新页面并从 BuddyPress 页面设置屏幕重做页面映射。”
这不是您想在生产站点上测试的东西,因为仍然不确定 BP Rewrites 将如何与不同的插件交互。 测试人员可以 将错误报告为问题 在插件的 GitHub 存储库上。
“这不是秘密:对这种向后兼容机制有足够信心开始考虑将 BP Rewrites 合并到 BuddyPress Core 的唯一方法是测试、测试和再次测试,”Viet 说。
在今年早些时候讨论 BP Rewrites 的进展时,Viet 建议将该功能插件作为至少两个主要 BuddyPress 版本的附加组件。 这将使开发人员有机会确保在合并到 BuddyPress 核心之前有更少的插件冲突。