如何修復 WordPress 中的語法錯誤

有許多 WordPress 教程要求您將代碼片段添加到您的網站。不幸的是,一個小錯誤可能會導致整個網站崩潰,這是非常可怕的,尤其是對於新用戶而言。如果您在您的 WordPress 網站上嘗試一些新的東西並且您收到「語法錯誤,意外…」錯誤,請不要驚慌。(註:文末有教程視頻。)

WordPress語法錯誤的常見原因

當您錯誤地粘貼代碼時,可能會出現語法錯誤。也許您在複製代碼時遺漏了一部分,或者腳本末尾可能有一個額外的結束標記。

This is a PHP open tag: <?php and this is a closing tag: ?>.

當您複製和粘貼 PHP 代碼片段時,它通常包含開放標記並導致語法錯誤。您可能不需要包含顯式標記,因為您正在將片段粘貼到現有代碼中。

在 WordPress Customizer 中編輯主題時,您也可能會遇到語法錯誤。如果發生這種情況,您通常會知道問題出在哪裡,或者至少知道問題發生在文件中的什麼位置。如果您不確定,請不要擔心。您可以通過對 wp-config.php 文件進行一些更改來找到錯誤。

您可能會看到此消息的另一個原因是插件更新或安裝。該擴展程序可能與您的 WordPress 版本不兼容,或者遊戲可能存在其他問題。如果錯誤發生時您正在更新或安裝插件,那很可能是問題的根源。

為什麼修復 WordPress 語法錯誤很重要?

語法錯誤表明您網站的代碼中存在某些不正確的地方。此問題可能會破壞您的網站並留下空白頁面或錯誤消息。

如果您的網站出現故障或無法訪問,這顯然會影響用戶體驗 (UX)。在您的網站應該出現的地方有一個空白頁面,除了會損害您的流量和轉化率之外,還會損害您的搜索引擎優化 (SEO) 排名。

解析錯誤:語法錯誤,WordPress 中的意外結尾是什麼意思?

解析錯誤 語法錯誤 WordPress 中的意外結束可能是最簡單的錯誤,但仍然會導致大問題。

錯誤有兩部分:

語法錯誤——此錯誤是由於 PHP 結構中的錯誤引起的,因為缺少或添加了不應該添加的字元。

意外 – 這意味著代碼中缺少一個字元,PHP 在找到它要查找的內容之前就到達了文件末尾。該錯誤最終將包含描述他們意外看到的信息。

如果您在 WordPress 中看到 Parse Error: Syntax Error, Unexpected end,這僅表示 WordPress 檢測到代碼中缺少或添加了某些內容。它可以像逗號、分號、右括弧或太多括弧一樣簡單。

缺少的語法可能存在於您編寫或粘貼到網站的代碼中,或者存在於您安裝或更新的主題或插件中。幸運的是,查找和修復並不難。但是,您需要了解代碼的工作原理以及組織方式。

如何解決解析錯誤:WordPress 中的語法錯誤意外結束 如何解決解析錯誤 1

The unexpected end of the actual parse error syntax error in WordPress 將根據導致錯誤的原因而有不同的結尾。

例子:

1- 語法錯誤,文件意外結束

2-語法錯誤,意外的標記

3-語法錯誤,意外的變數

4-語法錯誤,意外的標識符

錯誤消息通常包括它不喜歡的特定令牌、變數、標識符等。定義。我們將看到一些這樣的例子。

在 WordPress 中測試解析錯誤語法錯誤意外結束

WordPress 對其處理代碼的方式進行了許多改進。現在,如果有以前版本的代碼在運行,而不是運行錯誤的代碼並殺死您的網站,它會在訪問者查看網站時嘗試使用該代碼。

這將防止您的網站向訪問者顯示錯誤並使您的網站崩潰。您的站點仍然有可能崩潰並鎖定您,但現在更難了。

此外,代碼編輯器現在顯示標記,因此可以輕鬆指定變數和其他代碼元素。這使得在 WordPress 的插件和主題代碼編輯器中測試代碼變得容易。

不幸的是,WordPress 並不總能給您明確的信息。有時沒有消息,內容丟失或不顯示網站。所有這些都是可以修復的,但可能需要更多的故障排除。

讓我們看幾個例子。我們將從簡單的事情開始。

編輯插件代碼

編輯插件代碼

首先,從你做的最後一件事開始。在這個例子中,我編輯了插件文件中的代碼。該文件已恢復為上次已知的正確代碼,因此我的更改無效。查看錯誤。它會告訴你是什麼導致了錯誤代碼以及錯誤所在的代碼行。

在此示例中,WordPress 希望看到一個分號,但意外地看到了一個括弧。

這很簡單。首先,看看它上面的那條線。我們看到單詞 break 以案例 4 結尾。我們很幸運有其他案例可以比較。上面是以 break 結尾的案例 3,但是這個案例有一個結束分號。

然後編輯導致錯誤的代碼。

編輯插件代碼 3

這是同一插件文件中的另一個示例。這顯示了第 488 行的錯誤。但是,這行代碼是正確的。不過,它給了我一個線索。它把它描述為一個意想不到的變數。

編輯插件代碼 4

如果我們查看 488 上面的代碼,我們會發現缺少一個右括弧。這會導致 WordPress 錯誤地看到下一行。

編輯插件代碼 5

只需添加右括弧並更新文件。該代碼現在可以正常工作。這些問題很簡單,但通常如果您在 WordPress 中看到一個意外結束的解析錯誤語法錯誤,就像在這些示例中一樣。

找不到錯誤時修復解析錯誤

如果它沒有為您顯示或者您不確定它來自哪裡,有兩種方法可以找到解析錯誤。以下是這兩種方法的介紹。

調試模式

define( 'WP_DEBUG', false );

如果您有此代碼,請將 false 更改為 true。

如果您沒有這行代碼,請查找包含以下內容的行:

「停止編輯!快樂的博客。」 並粘貼此代碼:

define( 'WP_DEBUG', true );

上傳網站。這會顯示錯誤,您現在可以開始進行故障排除了。

調試插件

查詢監視器 1024x525-1

Query Monitor,是最流行的調試插件之一。它提供了您可以從前端和後端訪問的工具,並作為頂部菜單欄的疊加層。

這將啟用各種調試工具,包括錯誤日誌,您可以在其中找到所需的信息。

巴科拉旗幟

使用 FTP 修復語法錯誤

要修復語法錯誤,您需要編輯導致此錯誤的代碼。您可以刪除它或更正語法。

通常初學者會驚慌失措,因為這個錯誤會導致您的整個站點無法訪問。如果您使用 WordPress 儀錶板的外觀 » 編輯器部分粘貼代碼,您將被鎖定。

解決此問題的唯一方法是使用 FTP 訪問您上次編輯的文件。安裝 FTP 程序後,將其連接到您的網站並導航到需要編輯的主題文件。如果您忘記了需要編輯哪個文件,只需查看錯誤代碼即可。該錯誤將準確告訴您需要編輯哪個文件和哪一行。

您可以刪除上次添加的代碼或以正確的語法編寫代碼。完成刪除或編輯代碼後,保存文件並將其上傳回您的伺服器。

訪問您的 WordPress 網站後,刷新頁面,您應該會看到您的網站再次運行。

如果您的 WordPress 訪問被鎖定,請修復解析錯誤

如果您被鎖定在 WordPress 之外,則修復解析錯誤

如果您無權訪問管理儀錶板,則必須以其他方式進行更改。要進行編輯,您需要從伺服器下載包含錯誤的文件並在代碼編輯器中打開它。

就我而言,我正在為二十一主題更改 function.php 文件。我的語法有誤,我的網站崩潰了。它所顯示的只是這個沒有幫助的錯誤。

如果您被鎖定在 WordPress 2 之外,則修復解析錯誤

最好的選擇是使用 FTP 或伺服器的 cPanel。對於此示例,我將使用 cPanel,但過程是相同的。首先,在 cPanel 中打開文件管理器。

如果您被鎖定在 WordPress 3 之外,則修復解析錯誤

接下來,打開您正在使用的網站的文件夾。如果它是主站點,您可能會看到一個地球圖標。否則,打開包含網站名稱的文件夾。

如果您被鎖定在 WordPress 4 之外,則修復解析錯誤

轉到 wp-content 文件夾。

如果您被鎖定在 WordPress 5 之外,則修復解析錯誤

轉到包含您要編輯的主題或插件的文件夾。在這種情況下,我正在編輯一個主題。

如果您被鎖定在 WordPress 5 之外,則修復解析錯誤

選擇主題或插件的文件夾。我選擇二十一主題的文件夾。

如果您被鎖定在 WordPress 7 之外,則修復解析錯誤

然後導航到問題發生時您編輯的文件。我正在編輯 functions.php 文件。下載或編輯文件以離線工作。我建議在進行更改之前下載備份。

如果您被鎖定在 WordPress-8 之外,則修復解析錯誤

您的代碼編輯器可以提供有關錯誤的信息。在我的例子中,它顯示第 29 行需要一個括弧。實際上,第 17 行缺少一個括弧,導致編輯器認為它需要一個括弧。

如果您被鎖定在 WordPress-9 之外,則修復解析錯誤

添加方括弧消除了錯誤。現在我可以上傳我的新文件來替換現有文件,或者如果我使用的是在線編輯器則保存它。

相關文章