WordPress 6.1将默认启用WebP格式图片优化方案解读
WordPress 在 2021 年底迎来了一个重要的技术升级——WebP 图像格式的全面支持。这一功能允许用户直接在内容编辑器中上传并使用 WebP 格式的图片,为网站性能优化提供了新的可能。然而,这一看似积极的改动在 2022 年 3 月引发了广泛的讨论与争议。
当时,WordPress 的性能团队提出了一项大胆的提议:将 WebP 格式设为网站内容的默认图像格式。这一提议不仅包括自动为上传的 JPEG 图片生成 WebP 版本,还计划在网站内容中优先使用 WebP 图像。然而,这一提议在 4 月份遭遇了用户的强烈反对,最终被搁置。经过数月的深入研究和分析,团队重新审视了这一提议,并得出了令人惊讶的结论。
研究发现,WebP 格式的兼容性问题远没有预想的严重。超过 97% 的网络浏览器和电子邮件客户端都支持 WebP 格式,移动应用方面,iOS 14 及以上版本和 Android 4.0 及以上版本均原生支持 WebP,而顶级 RSS 阅读器也无一例外地支持这一格式。唯一需要注意的是 Open Graph 消费者,它们对 WebP 的支持情况较为复杂。
尽管兼容性问题不大,但用户最担心的还是存储空间的消耗。有人担心,除了原有的 JPEG 文件外,WebP 文件会使得存储需求翻倍。为了验证这一担忧,性能团队的贡献者 Adam Silverstein 对多家托管服务提供商进行了调查。结果显示,对于大多数网站来说,存储空间并不是一个大问题,尽管随着时间的推移,存储需求可能会增加。对于拥有 1000 个以上托管站点的企业级主机,绝大多数(超过 86%)将不会受到存储空间翻倍的影响。
然而,这一结论并非没有争议。调查中仅涉及了 17 位房东,且数据中未包含公司名称。尽管 58% 的用户不会受到存储需求翻倍的影响,但仍有 14% 的网站可能面临接近容量的风险,这一比例可能涉及数百万个 WordPress 网站。
为了解决这些问题,性能团队提出了一系列改进措施。首先,他们提供了一个 JavaScript 片段,用于检测不支持 WebP 的浏览器,并自动加载 JPEG 格式的图片。此外,他们还计划在 WordPress 6.1 版本中默认自动生成仅核心图像大小的 WebP 版本,并允许用户选择是否为自定义图像大小生成 WebP 版本。对于一些特殊情况下 WebP 格式并不适用或不受支持的图像,用户可以选择退出自动生成 WebP 版本。此外,团队还计划引入一个过滤器,允许开发人员控制基于图像子大小的其他 MIME 类型的生成,从而避免浪费存储空间。
值得注意的是,这一提议并不会为现有上传的图片自动生成 WebP 版本。想要转换过去上传的图片的用户需要使用 WP-CLI 或类似 Regenerate Thumbnails 的插件。这些改进措施旨在平衡性能优化和用户体验,确保大多数用户能够顺利过渡到 WebP 格式。
然而,这一提议的修订版本仍然引发了一些争议。一些人强烈支持新方法,而另一些人则担心这一变化可能对一些用户造成实际影响。WordPress 开发者 Jon Brown 表示,不能简单地说“绝大多数网站不会受到影响”,因为 14% 的比例仍然是一个不容忽视的数字。他担心这些网站可能面临存储空间不足、备份失败等问题。
一些评论者建议 WordPress 考虑采用更现代的 AVIF 格式,与 WebP 相比,AVIF 具有更好的质量和压缩率。JavaScript 开发人员 Kevin Batdorf 认为,在优雅地回退的同时支持下一代格式(如 AVIF)可能更有意义。性能团队贡献者 Bethany Chobanian Lang 表示,AVIF 已经在他们的关注范围内,但它的浏览器支持仍然不足,只有不到 70% 的网络浏览器支持这一格式。
对于这一话题感兴趣的用户可以在相关 Trac 工单中参与讨论。Silverstein 鼓励大家积极参与修订方法的讨论,并希望这一更改能够在 6.1 发布周期的早期合并,以便进行更多测试。最后,WordPress 也提供了一些钩子,允许用户禁用这一默认功能,从而确保用户可以根据自己的需求进行选择。