- 將腳本排入佇列,通常會發生這種情況。
- JavaScript 衝突:您網站上運行的其他腳本可能與 jQuery 衝突,尤其是在它們未正確載入的情況下。 此衝突可能會中斷 jQuery,從而導致錯誤。
- CDN故障:某些網站依賴於內容交付網路 (CDN) 上託管的 jQuery。 如果 CDN 不可用或被阻止,則網站將無法載入 jQuery,從而導致錯誤。
所有這些問題都會阻止 jQuery 順利運行。 但別擔心 – 憑藉我們的經驗,我們可以指導您完成解決問題的解決方案。
1. 更新 WordPress、主題和外掛程式
過時的軟體是導致「jQuery 未定義」錯誤的最常見原因之一。 過時的主題或外掛程式可能與最新版本的 WordPress 不相容,這可能會導致腳本衝突。 要解決此問題,請執行以下操作:
首先,確保您的 WordPress 核心已更新。 導航到控制面板 » 更新,如果有可用更新,請按兩下更新到版本 X.X.X。。
您的 WordPress 外掛程式更新將列在核心更新下方。
您可以選擇所有這些,然後按兩下更新外掛程式。
最下面,您將看到 WordPress 主題的更新。
只需選擇所有這些,然後按兩下更新主題。
2. 檢查 jQuery 是否正確載入
在探索更高級的解決方案之前,重要的是要檢查您的網站是否真的載入了 jQuery。 此步驟可幫助您確認 jQuery 是否可用並正常運行。
只需右鍵按兩下 WordPress 網站上的任意位置,然後選擇「查看頁面原始程式碼」。。
提示: 或者,您可以按 Ctrl + U 在 Windows 上或 Cmd + Option + U 在 Mac 上访问页面源。
這將向您顯示頁面的原始 HTML 和 JavaScript。
接下來,按 Ctrl +F(或 Mac 上的 Cmd + F)調出搜索欄,然後鍵入“jquery.min.js”。
如果 jQuery 已正確載入,您應該會在代碼中看到對它的引用。
查找 jQuery 的另一種方法是使用瀏覽器的檢查工具。 只需轉到 『Network』 選項卡並重新載入頁面。
提示: 在 Windows 裝置上,您可以通過按鍵盤上的 F12 來存取檢查工具。 對於 Mac,點擊 選項 + Cmd + I.
通過在搜索欄中鍵入 『jquery』 來篩選網路活動。 如果載入了 jQuery,您將在此處看到它。
在這兩種方法中如果您沒有看到 jQuery 載入,則問題可能在於它在 WordPress 中的排隊方式。 在以下步驟中,我們將指導您解決此問題。
3. 添加 jQuery 回歸
有時,您網站上的腳本可能正在使用存在連接問題的CDN載載 jQuery。 在這種情況下,它將無法載入 jQuery 並導致錯誤。
要解決此問題,您可以向 WordPress 網站添加 jQuery 回退。 這可確保始終載入 jQuery。
您需要將其添加到您網站的head部分以確保它首先載入。 但是,我們不建議直接編輯主題檔。 我們看到人們在更新主題和他們添加的代碼時丟失了他們的更改。
在 WordPress 中添加自訂代碼的最佳方法是使用 WPCode 外掛程式。 它是一個代碼片段管理器,使您能夠安全地添加自定義代碼而不會破壞您的網站。
首先,安裝並啟動 WPCode 外掛程式。 有關詳細資訊,請參閱我們關於安裝 WordPress 外掛程式的教程。
注意:還有一個名為 WPCode Lite 的免費版本。
啟動后,轉到 Code Snippets » + Add Snippet。 然後,按下「添加您的自訂代碼(新代碼段)」下的「使用代碼段」按鈕。
在代碼編輯器中,為您的代碼段指定一個名稱,例如“jQuery Fallback”。
之後,為“代碼類型”選擇“HTML 片段”。
接下來,將以下代碼粘貼到 『Code Preview』 框中:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<script>
window.jQuery || document.write('<script src="/wp-includes/js/jquery/jquery.js"></script>')
</script>
然後,向下滾動到 ‘Insertion’ 部分。
在這裡,您可以告訴 WPCode 在何處載入此代碼。 確保選擇「網站範圍標題」。。
最後,按兩下頂部的 ‘Save Snippet’ 按鈕以保存您的自訂代碼。
之後,不要忘記通過將開關切換到“active”來激活代碼段。
4. 修復文本載入順序(高級)
“jQuery is not defined”錯誤的另一個常見原因是 jQuery 在依賴它的其他腳本之後載入。 修復腳本載入順序可確保始終首先載入 jQuery,從而防止衝突。
如果您知道哪個腳本依賴於 jQuery,則可以通過將 jQuery 添加為依賴項來正確地將該腳本排入佇列。
如果 『jQuery is not defined』 錯誤是由於 jQuery 在其他依賴它的腳本之後載入引起的,你可以使用 WPCode 修復腳本載入順序。
首先,安裝並啟動 WPCode 外掛程式,或選擇名為 WPCode Lite 的免費版本。
啟動後,轉到 Code Snippets » + Add Snippet 並按兩下「添加您的自訂代碼(新代碼段)」下的“使用代碼段”按鈕。
在代碼編輯器中,為您的代碼段指定一個名稱,例如 『Fix Script Loading Order』,然後選擇 『PHP snippet』 作為你的代碼類型。
然後,添加以下代碼以確保 jQuery 作為任何自定義腳本的依賴項排隊:
wp_enqueue_script( 'your-script-handle', get_template_directory_uri() . '/js/your-script.js', array( 'jquery' ), null, true );
不要忘記將 ‘your-script-handle’ 替換為有意義的名稱來識別腳本。並將 『/js/your-script.js』 替換為主題 /js/ 資料夾中的實際文稿檔名。
代碼中的部分確保首先載入 jQuery。array('jquery')
添加代碼后,向下滾動到 『插入』 選項並選擇 『Site Wide Header』 以確保腳本載入您網站 HTML 的正確部分。
最後,按兩下頂部的 ‘Save Snippet’ 按鈕以保存您的自訂代碼。
之後,不要忘記通過將開關切換到“’active”來激活代碼段。
使用 WPCode 將腳本正確排隊可確保 jQuery 以正確的順序載入。 如果這是問題的根源,這應該可以解決錯誤。
5. 編輯 wp-config.php 以修復 jQuery 載入問題
如果其他方法不起作用,編輯 檔可以通過控制 WordPress 處理腳本載入的方式來提供説明。wp-config.php
如果腳本串聯或文件路徑問題導致「jQuery is not defined」錯誤,則此方法非常有用。
以下是應用此方法的方法:
首先,訪問您的檔。 您可以使用 FileZilla 等 FTP 用戶端或透過存取託管控制面板中的檔案管理員來執行此操作。wp-config.php
該文件位於 WordPress 安裝實例的根目錄中(通常在資料夾中)。wp-config.php
public_html
找到檔案后,打開它進行編輯,並在顯示以下內容的行之前添加以下代碼:/* That’s all, stop editing! Happy blogging. */
** Absolute path to the WordPress directory. */
if ( !defined('ABSPATH') )
define('ABSPATH', dirname(FILE) . '/');
define('CONCATENATE_SCRIPTS', false);
以下是此代碼的作用:
- 該定義可確保 WordPress 知道其核心文件的正確路徑,這可以防止 jQuery 載入問題。
ABSPATH
- 該行禁用腳本串聯。 這會強制 WordPress 單獨載入每個腳本,從而防止在合併腳本時出現衝突。
CONCATENATE_SCRIPTS
添加此代碼后,保存更改並重新載入網站,以查看錯誤是否已解決。
禁用腳本串聯可以解決 jQuery 問題,尤其是當其他方法不起作用時。