運用 WebP Express 外掛打造支援 Next-Gen 圖檔格式的 WordPress 網站

發表日期:
2022.02.02
/
分類:
現在網站中的所使用的圖片格式大多都採用 JPEG 與 PNG 兩種,而圖片檔案的載入速度一直都是網站優化的一道關卡。為了能同時兼顧圖片的檔案大小與解析度,Go

現在網站中的所使用的圖片格式大多都採用 JPEG 與 PNG 兩種,而圖片檔案的載入速度一直都是網站優化的一道關卡。為了能同時兼顧圖片的檔案大小與解析度,Google 在 2010 年釋出了全新的 WebP 圖片檔案格式,內容完全相同的圖片在 WebP 與 PNG 的測試後最高能節省近 48% 檔案大小,轉換 JPEG 格式的話還能節省更多空間,且能使轉換後的圖檔維持著轉換前的水準。

然而當前版本的 WordPress 內建媒體櫃尚不支援 WebP 圖檔格式的上傳,所以我們要來借用「WebP Express」外掛之手來打造可相容 WebP 格式的環境。

如下圖,當使用 Google PageSpeed Insights 服務來檢測尚未支援 WebP 圖檔的網站時都會出現「提供 next-gen 格式的圖片」提示,修正這個問題即是本文的主軸。

確認瀏覽器支援程度

我們為了要來做 WebP 格式支援當然要先使用支援此格式的瀏覽器來操作,這邊我拿已被原廠拋棄的 IE 瀏覽器來做示範。當你將 WebP 格式的圖片位址直接輸入到網址列中,不支援 WebP 格式的瀏覽器會直接下載 WebP 檔案而不是顯示圖片。


外掛資訊


https://youtu.be/SpBXCD-d3Fs


設定說明

接下來從 WordPress 控制台進入 WebP Express 設定頁面,開始進行設定調整:

一、Operation mode

因不同環境需設置不一樣值,Operation mode 可以幫我們隱藏無用途的欄位。例如網站有使用 CDN 時,將 Operation mode 設定為「CDN friendly」可隱藏數個不必要的欄位,並提示需啟用 Alter HTML。

名稱 說明
Varied image responses 預設值,自動在支援 WebP 的瀏覽器中重導原非 WebP 影像至 WebP 格式,無支援此格式的瀏覽器不影響。
CDN friendly 必需啟用 Alter HTML,自動於原始碼中插入 標示 WebP 影像路徑,
No conversion 僅用於 WebP 位址重導,不進行轉檔。如網站使用其他方法轉檔至 WebP 格式者可用此設置。
Tweaked 顯示所有欄位。

二、General

名稱 說明
Scope WebP Express 作用範圍:
1. Uploads Only:僅已上傳的影像。
2. Themes Only:僅佈景主題。
3. Uploads and themes:僅已上傳的影像與佈景主題。
4. All content:wp-content 資料夾下的所有影像。
5. Everything:所有影像,包含 wp-admin 資料夾下的圖檔。
Image types to work on 需轉檔的影像格式:
1. None:不轉檔。
2. Only Jpegs:僅轉換 JPEG。
3. Only pngs:僅轉換 PNG。
4. Both jpegs and pngs:轉換 JPEG 與 PNG。
Destination folder 轉檔後的影像資料夾位置,僅 wp-content/uploads 資料夾下影像有效:
1. In separate folder:單獨資料夾,位置為 wp-content/webp-express/webp-images/doc-root/wp-content/uploads。
2. Mingled:與原圖檔同一資料夾。
File extension 副檔名格式,僅 Destination folder 為 Mingled 模式可用:
1. Append “.webp”:轉換後的影像名稱會變成 123.png.webp 或 123.jpeg.webp。
2. Set to “.webp”:直接設定為 123.webp。
Destination structure 轉檔後影像資料夾結構:
1. Document root:建議值,所有轉檔後影像將會按照原結構移動至 wp-content/webp-express/webp-images/doc-root。
2. Image roots:使用原影像的結構,例如 wp-content/uploads/123.jpg 會變成 wp-content/uploads/123.webp,但如果 Destination folder 設定為 In separate folder 則會改置於 wp-content/webp-express/webp-images。
Cache-Control header 快取標頭設定,一般會在伺服器上完成設定,故省略。
Prevent using webps larger than original 防止轉檔後的檔案比原影像還大,如果網站以效能取向請啟用,如只是要提升 SEO 分數則取消。

三、Redirection rules

名稱 說明
Enable redirection to converter? 是否一律重導影像檔至轉換器,如已存在 WebP 版本與瀏覽器支援時回傳轉檔後圖檔,否則回傳原圖檔。
Do not pass source in Query String 是否要忽略查詢字串,查詢字串為網址中 ? 後的所有文字。
Enable direct redirection to existing converted images? 如已存在轉檔後影像,是否要直接重導至目標圖檔。
Create webp files upon request? 是否要於請求時進行 WebP 轉檔,如已存在轉檔後圖檔時會直接回傳圖檔,否則回傳 404 錯誤並執行轉檔,待轉檔完成後即可正常運行。

四、Conversion

名稱 說明
Jpeg options JPEG 圖檔壓縮方式、品質。
PNG options PNG 圖檔壓縮方式、品質。
Metadata 元資料處理方式:
1. No metadata in webp:於 WebP 中移除所有元資料。
2. Copy all metadata to webp:保留所有元資料,多用於攝影作品,可記錄光圈、焦距等資料。
Conversion method 是否要於請求時進行 WebP 轉檔,如已存在轉檔後圖檔時會直接回傳圖檔,否則回傳 404 錯誤並執行轉檔,待轉檔完成後即可正常運行。
Convert on upload 是否要於上傳圖片時進行轉檔,啟用後會拖慢上傳的時間。
Enable logging 是否啟用記錄檔。
Bulk convert 批次轉檔。

五、Serve options

名稱 說明
Response on failure 失敗時回傳內容:
1. Original image:原圖檔。
2. 404:Error Not Found 錯誤。
3. Error report:錯誤報告
Response on success 成功時回傳內容:
1. Original image:原圖檔。
2. Converted image:轉檔後影像。

六、Alter HTML

名稱 說明
Replace tags with tags, adding the webp to srcset. 預設值,以 取代原圖程式碼,將 WebP 版本圖檔嵌入,由瀏覽器決定顯示何種圖片。
Replace image URLs 直接取代圖檔位址,如網站有快取機制時可能不可用。

參考設定

上線測試

新增一篇文章並上傳一張圖片,並開啟瀏覽器開發人員介面檢視圖片程式碼,可發現已有 標籤位於 上方,內容中也有轉檔後的 WebP 影像位址。

參考資料

comments powered by Disqus