如何讓WordPress延遲加載JavaScript加速頁面渲染?

WordPress延遲加載JavaScript,來加速頁面渲染方法。

WordPress延遲加載JavaScript,來加速頁面渲染

什麼是JavaScript的Defer屬性?

每個人都可能遇到過這種情況:

head中有N個腳本,在加載腳本時,會阻塞頁面渲染,這通常是空白的。

當然,我們可以將源代碼中的腳本放入頁腳來解決這個問題。

但是,一些複雜的開發環境,會讓這個簡單的工作變成特別複雜。

此時我們可以使用Defer屬性,這是JavaScript中相對少見的屬性。

你可能永遠不會使用它,但我相信在閱讀這篇介紹後,我相信你不會離開它。

它的主要功能是讓腳本在加載整個頁面後再解析,而不是在加載時解析它,這為僅包含事件觸發的JavaScript的腳本提供了完整的頁面加載速度。

是的,如果Script腳本標記具有延遲defer屬性,即使它被放置在head中,它也會在解析HTML頁面後執行,這類似於將Script腳本放在頁面底部。

當然,延遲的使用也是有限的,通常要注意2點:

1)不要在延遲defer類型腳本塊中,調用document.write 命令;

  • 因為document.write 將產生直接輸出效果。

2)不要在Defer腳本中,包括任何立即執行腳本,將使用全局變量或函數。

將Defer屬性添加到WordPress中使用的腳本

在WordPress中,我們如何自動將Defer屬性添加到WordPress使用的腳本?

我們可以將以下代碼添加到當前主題的functions.php文件中 ▼

add_filter( 'clean_url', 'wpcwl_defer_script',11,1);
function wpcwl_defer_script( $url ){
if(strpos($url, '.js') === false){
return $url;
}

return "$url' defer='defer";
};

注意事項

實時預覽管理可能會顯示空白:

若使用以上代碼,打開實時預覽管理(外觀 → 自定義)時,可能會顯示空白,所以請酌情使用。

在需要實時預覽管理時,將以上代碼註釋掉,自定義完成後才刪除註釋代碼。

PHP註釋代碼示例:

/*

这里是代码 

*/

希望陳溈亮博客( https://www.chenweiliang.com/ ) 分享的《如何讓WordPress延遲加載JavaScript加速頁面渲染? 》,對您有幫助。

歡迎分享本文鏈接:https://www.chenweiliang.com/cwl-954.html

歡迎加入陳溈亮博客的Telegram 頻道,獲取最新更新!

🔔 率先在頻道置頂目錄獲取寶貴的《ChatGPT 內容行銷AI 工具使用指南》! 🌟
📚 這份指南蘊含價值巨大,🌟難逢的機遇,切勿錯失良機! ⏰⌛💨
喜歡就分享和按贊!
您的分享和按贊,是我們持續的動力!

 

發表評論

您的電子郵箱地址不會被公開。 必填項已用 * 標註

滾動到頂部