BuddyPress 即将推出改进加载 JavaScript 和 CSS资产,以便它们仅加载到社区页面上。以前,该插件会在每个页面上不加选择地加载它们。

BuddyPress 首席开发人员 Mathieu Viet 表示,他不确定是否有保留此内容的具体原因。在插件之前引入了 BP Theme Compat API。在 1.7 版本中,有必要使用 BuddyPress 兼容主题,例如默认捆绑的主题(默认为 BP)。

“我认为我们保留这个主题是为了将这些资产加载到我们添加到 BuddyPress 的方式中第一个模板包 (BP Legacy),”Viet 说。

用户经常要求 BuddyPress 只在社区页面上加载他们的资产,以期进一步优化他们的网站。例如,在 2020 年,BuddyDev 论坛上的一位用户请求自定义代码来执行此操作。专家建议不要这样做

“这对你没有多大帮助,而且会在未来造成很多问题,”BuddyPress 撰稿人 Brajesh Singh 说。 “一些依赖插件可能会开始抛出 JavaScript 错误并破坏您网站的某些功能。这不值得付出努力。”

Singh 建议用户启用浏览器缓存以避免多次加载资产,并坚持使用 gzip压缩和其他最佳实践的优化。他还建议添加一个插件,有条件地阻止 BuddyPress 在某些页面上加载。

在 11.0.0 版本中,BuddyPress 核心将逐渐转向仅加载社区区域所需的资源。此更新仍将在任何地方加载 JS 和 CSS,但将提供一个过滤器,用户可以将其添加到他们的 bp-custom.php 文件中,以仅将 BP 资产保留在社区页面上:

add_filter( 'bp_enqueue_assets_in_bp_pages_only', '__return_true' );

"如果你使用上面的过滤器,你会发现由于特定的BP插件或主题,有你的网站有问题,请在这里报告,然后我们将有另一个开发周期来解决问题,然后我们将这些资产完全限制在 BuddyPress 在版本 12.0.0 的第二步中生成的页面,Viet 说。

版本 11.0.0 预计将于 2022 年 12 月 14 日发布。一直期待插件以这种方式运行的早期采用者和 BuddyPress 网站所有者可以在下一次使用过滤器的重大更新后利用它。过滤器如果用户正在排除故障并遇到插件问题,也可以轻松删除。

Categories: Frie nds 出版社、新闻

资源