
當談及WordPress效能的時候,靜態資源URL地址的查詢字串問題必不可少。網站的CSS和JavaScript檔案通常在其網址的末尾帶有檔案版本,例如domain.com/style.css?ver=4.6。某些伺服器和代理伺服器無法快取查詢字串,即時存在cache-control:public標頭。
刪除它們,有時可以改善快取。這也將修復您可能在GTMetrix和Pingdom等網站效能測試工具看到的警告,即“從靜態資源中刪除查詢字串”。

從靜態資源中刪除查詢字串
請記住,設定查詢字串通常是有原因的。WordPress開發人員使用檔案版本控制來解決快取問題。例如,如果他們為style.css更新了一個版本,從?ver=4.6迭代至?ver=4.7,則它將被視為全新的URL,並且不會被快取。如果刪除查詢字串並更新外掛,則可能導致瀏覽器繼續使用快取的版本。在某些情況下,這可能會影響到頁面的外觀,直到快取資源過期或快取完全重新整理為止。
查詢字串還用於開發工作流程中,以便於開發跟蹤版本。
刪除靜態資源URL地址查詢字串
您可以通過兩種不同的方式刪除查詢字串,一種是使用少量程式碼,另一種是使用WordPress外掛。
1.使用程式碼從靜態資源中刪除查詢字串
您可以通過幾行程式碼即可刪除靜態資源URL地址的查詢字串。只需將以下內容新增到WordPress主題的functions.php檔案中即可。
function remove_query_strings() {
if(!is_admin()) {
add_filter('script_loader_src', 'remove_query_strings_split', 15);
add_filter('style_loader_src', 'remove_query_strings_split', 15);
}
}
function remove_query_strings_split($src){
$output = preg_split("/(&ver|\?ver)/", $src);
return $output[0];
}
add_action('init', 'remove_query_strings');
重要提示: 如果操作不正確,編輯WordPress主題原始碼可能會影響網站執行。如果你對程式碼不熟悉,建議找開發代勞。或者,也可以利用免費的Code Snippets外掛,支援以外掛的方式新增上面的程式碼,你又不必擔心新增程式碼會使網站癱瘓,相對保險很多。
只需建立一個新程式碼段並新增上面的程式碼即可。選擇“僅在站點前端執行”,然後儲存程式碼段。查詢字串就會被刪除!可能需要清除WordPress網站快取,才能看到更改在前端生效。

刪除查詢字串程式碼段
帶查詢字串(程式碼前)
這是一個使用查詢字串載入指令碼的示例。

帶查詢字串的請求
沒有查詢字串(程式碼後)
這是刪除查詢字串後的指令碼示例。

沒有查詢字串的請求
2.使用外掛刪除靜態資源URL地址查詢字串
如果你不想操作程式碼,另外一個替代方法是使用WordPress外掛。通過安裝啟用Perfmatters外掛,你只需要單擊按鈕即可實現一鍵刪除靜態資源URL地址的查詢字串。當然除了該功能,外掛還可以幫助你實現WordPress網站其他優化。

使用Perfmatters外掛刪除查詢字串
沒有更多的查詢字串
通過以上任一選項後,再使用GTMetrix或Pingdom等網站速度測試工具對網站執行測試,有關查詢字串的警告就完全消失了。

修復“刪除靜態資源警查詢字串”警告

評論留言
脣槍舌劍 (2)
奶爸建网站笔记
2020.6.13 12:06
很多优化插件都带了这个功能了,不需要自己用代码了。
wbolt
2020.6.13 13:06
不也提到插件办法啦,其实最好的方式就是自己手动执行。