WebP是一種現(xiàn)代圖像格式,可為網(wǎng)絡(luò)圖像提供更好的無損和有損壓縮。WebP 圖像的平均尺寸比 JPEG 或 PNG 等效圖像小 30%,因此網(wǎng)站運(yùn)行速度更快,占用帶寬更少。據(jù) caniuse 顯示,所有現(xiàn)代瀏覽器都支持 WebP。
從 WordPress 版本 5.8 開始,您可以在 WordPress 中上傳和使用 WebP 圖像,就像現(xiàn)在上傳和使用 JPEG 或 PNG 圖像一樣(只要您的托管服務(wù)支持 WebP)。將圖片轉(zhuǎn)換為 WebP 格式將提高網(wǎng)站性能,改善網(wǎng)站訪問者的體驗(yàn)。
WebP 如何幫助您提高頁面打開速度
WebP 圖像的尺寸明顯小于 JPEG 圖像,因此網(wǎng)站訪客可以更快地看到完整頁面的加載。較小的圖像占用的傳輸帶寬更少,而且您的圖像在默認(rèn)情況下仍能獲得srcset和懶加載的所有響應(yīng)式優(yōu)勢。最后,所有主流瀏覽器都支持 WebP,因此大多數(shù)網(wǎng)站現(xiàn)在就可以開始使用它們。
創(chuàng)建 WebP 圖像
圖像編輯工具支持以 WebP 格式導(dǎo)出,也可以使用命令行轉(zhuǎn)換工具或基于網(wǎng)絡(luò)的工具(如Squoosh)。將圖片保存為 WebP 格式后,將其上傳到 WordPress,然后像使用其他圖片一樣使用它們。
使用 WebP 圖像
WebP 圖像可以像 WordPress 中的其他圖像一樣使用,但有一些小的注意事項(xiàng)。
WebP 圖像支持有損和無損壓縮,以及動畫格式和對透明圖像的支持。在 WordPress 中,只有當(dāng)托管服務(wù)器使用 Imagick(PHP庫)時才支持無損 WebP格式,直到 LibGD 添加支持。此外,調(diào)整大小后的圖像尚不支持動畫和 alpha 格式(當(dāng)您以這些格式上傳時,會改為創(chuàng)建有損圖像)。
媒體庫中的 WebP 支持要求您的 Web 服務(wù)器的圖像處理庫(WordPress 支持 Imagick 和 LibGD)支持 WebP 格式。幸運(yùn)的是,這些庫已經(jīng)支持 WebP 一段時間了,因此支持范圍很廣。如果您的 Web 服務(wù)器不支持 WebP,則當(dāng)您嘗試上傳 WebP 圖像時會看到一條錯誤消息。
如果您的受眾中有大量使用不支持的瀏覽器(如 IE11)的用戶,請避免使用 WebP 圖像,或加入瀏覽器 polyfill。
未來計劃
媒體組件團(tuán)隊(duì)還在探索讓 WordPress 對上傳的圖像執(zhí)行圖像格式轉(zhuǎn)換的選項(xiàng)——使用 WebP 作為小尺寸圖像的默認(rèn)輸出格式。您可以在 trac ticket上跟蹤進(jìn)度并測試此功能。我們還在關(guān)注更現(xiàn)代的格式,如 AVIF 和 JPEGXL,它們既能提高壓縮率,又能進(jìn)一步減少壓縮所需的資源。
常見問題
如何微調(diào) WebP 圖像的壓縮質(zhì)量設(shè)置?
開發(fā)者或者插件可以使用wp_editor_set_quality 過濾器來設(shè)置質(zhì)量設(shè)置,傳遞的mime類型可以按類型設(shè)置,例如:
// Use a quality setting of 75 for WebP images.
function filter_webp_quality( $quality, $mime_type ) {
if ( 'image/webp' === $mime_type ) {
return 75;
}
return $quality;
}
add_filter( 'wp_editor_set_quality', 'filter_webp_quality', 10, 2 );
如果我啟用過濾器使用 WebP 子尺寸,但上傳 JPEG,會發(fā)生什么情況?子尺寸必須與原始尺寸一致嗎?
默認(rèn)情況下,WordPres 會創(chuàng)建與上傳文件類型相同的子尺寸圖像,因此上傳 WebP 文件會在您的網(wǎng)站上獲取 WebP 文件。如果您想嘗試上傳 JPEG 并讓 WordPress 自動將這些圖像轉(zhuǎn)換為 WebP 以用于子尺寸圖像,請查看此
插件(相關(guān) trac ticket)。
如果我使用 WordPress 多站點(diǎn),我的所有站點(diǎn)都可以使用 WebP 圖像嗎?
否。多站點(diǎn)存儲創(chuàng)建站點(diǎn)時允許用戶上傳的文件類型。我們正在#53167中努力改進(jìn)這一點(diǎn)。同時,為了確保網(wǎng)絡(luò)上所有現(xiàn)有站點(diǎn)都允許 WebP 文件,您可以使用site_option網(wǎng)絡(luò) mu-plugins 中的過濾器為所有網(wǎng)絡(luò)站點(diǎn)添加webp允許的文件類型:
// Ensure all network sites include WebP support.
add_filter(
'site_option_upload_filetypes',
function ( $filetypes ) {
$filetypes = explode( ' ', $filetypes );
if ( ! in_array( 'webp', $filetypes, true ) ) {
$filetypes[] = 'webp';
}
$filetypes = implode( ' ', $filetypes );
return $filetypes;
}
);


