有许多 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 中的语法错误意外结束
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,但是这个案例有一个结束分号。
然后编辑导致错误的代码。
这是同一插件文件中的另一个示例。这显示了第 488 行的错误。但是,这行代码是正确的。不过,它给了我一个线索。它把它描述为一个意想不到的变量。
如果我们查看 488 上面的代码,我们会发现缺少一个右括号。这会导致 WordPress 错误地看到下一行。
只需添加右括号并更新文件。该代码现在可以正常工作。这些问题很简单,但通常如果您在 WordPress 中看到一个意外结束的解析错误语法错误,就像在这些示例中一样。
找不到错误时修复解析错误
如果它没有为您显示或者您不确定它来自哪里,有两种方法可以找到解析错误。以下是这两种方法的介绍。
调试模式
define(
'WP_DEBUG'
, false );
如果您有此代码,请将 false 更改为 true。
如果您没有这行代码,请查找包含以下内容的行:
“停止编辑!快乐的博客。” 并粘贴此代码:
define(
'WP_DEBUG'
, true );
上传网站。这会显示错误,您现在可以开始进行故障排除了。
调试插件
Query Monitor,是最流行的调试插件之一。它提供了您可以从前端和后端访问的工具,并作为顶部菜单栏的叠加层。
这将启用各种调试工具,包括错误日志,您可以在其中找到所需的信息。
使用 FTP 修复语法错误
要修复语法错误,您需要编辑导致此错误的代码。您可以删除它或更正语法。
通常初学者会惊慌失措,因为这个错误会导致您的整个站点无法访问。如果您使用 WordPress 仪表板的外观 » 编辑器部分粘贴代码,您将被锁定。
解决此问题的唯一方法是使用 FTP 访问您上次编辑的文件。安装 FTP 程序后,将其连接到您的网站并导航到需要编辑的主题文件。如果您忘记了需要编辑哪个文件,只需查看错误代码即可。该错误将准确告诉您需要编辑哪个文件和哪一行。
您可以删除上次添加的代码或以正确的语法编写代码。完成删除或编辑代码后,保存文件并将其上传回您的服务器。
访问您的 WordPress 网站后,刷新页面,您应该会看到您的网站再次运行。
如果您的 WordPress 访问被锁定,请修复解析错误
如果您无权访问管理仪表板,则必须以其他方式进行更改。要进行编辑,您需要从服务器下载包含错误的文件并在代码编辑器中打开它。
就我而言,我正在为二十一主题更改 function.php 文件。我的语法有误,我的网站崩溃了。它所显示的只是这个没有帮助的错误。
最好的选择是使用 FTP 或服务器的 cPanel。对于此示例,我将使用 cPanel,但过程是相同的。首先,在 cPanel 中打开文件管理器。
接下来,打开您正在使用的网站的文件夹。如果它是主站点,您可能会看到一个地球图标。否则,打开包含网站名称的文件夹。
转到 wp-content 文件夹。
转到包含您要编辑的主题或插件的文件夹。在这种情况下,我正在编辑一个主题。
选择主题或插件的文件夹。我选择二十一主题的文件夹。
然后导航到问题发生时您编辑的文件。我正在编辑 functions.php 文件。下载或编辑文件以脱机工作。我建议在进行更改之前下载备份。
您的代码编辑器可以提供有关错误的信息。在我的例子中,它显示第 29 行需要一个括号。实际上,第 17 行缺少一个括号,导致编辑器认为它需要一个括号。
添加方括号消除了错误。现在我可以上传我的新文件来替换现有文件,或者如果我使用的是在线编辑器则保存它。