WordPress 提示”There has been a critical error on this website”(此网站发生了严重错误)是一个常见的致命错误提示,意味着网站前端无法正常访问。这个提示是 WordPress 5.2 版本开始引入的”致命错误保护”机制,旨在防止白屏死机,同时给站长提供排查线索。
主要原因
1. 主题或插件冲突
最常见的原因,特别是:
刚安装或更新某个插件/主题后出现
插件与当前 WordPress 版本不兼容
多个插件之间代码冲突
使用了破解版/盗版主题或插件(代码质量差或有恶意代码)
2. PHP 版本不兼容
WordPress 核心、主题或插件需要更高/更低的 PHP 版本
服务器升级 PHP 版本后,旧代码出现语法错误
使用了已弃用的 PHP 函数
3. 内存不足
PHP 内存限制(memory_limit)过低
复杂操作(如批量导入、大文件处理)耗尽内存
共享主机资源受限
4. 数据库连接问题
数据库凭据错误(wp-config.php 配置有误)
数据库服务器宕机或连接超时
数据库表损坏或数据不一致
5. 文件损坏或缺失
WordPress 核心文件被意外删除或损坏
主题/插件文件上传不完整
服务器磁盘空间已满导致写入失败
6. 代码错误
主题或插件中的 PHP 语法错误
自定义代码(functions.php 中添加的代码)出错
钩子(Hook)使用不当导致无限循环或冲突
如何排查和解决
第一步:查看错误日志
WordPress 会向管理员邮箱发送详细的错误信息,检查邮件获取具体的错误文件和代码行。
如果没有收到邮件,可以启用调试模式:
通过 FTP/File Manager 打开 wp-config.php
找到 define( ‘WP_DEBUG’, false ); 改为 define( ‘WP_DEBUG’, true );
添加以下代码获取详细错误:
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false ); // 避免在前端显示错误
查看 /wp-content/debug.log 文件
第二步:进入恢复模式
WordPress 5.2+ 提供的恢复模式链接通常在管理员邮件中,点击链接可以:
无需访问前端即可登录后台
直接停用出问题的插件或主题
查看具体错误详情
第三步:逐一排查
如果是插件问题:
重命名 /wp-content/plugins/ 文件夹为 plugins-old,所有插件会被停用
逐个恢复插件,找出罪魁祸首
如果是主题问题:
切换到默认主题(如 Twenty Twenty-Four),重命名当前主题文件夹
如果是 PHP 版本问题:
在主机控制面板切换 PHP 版本(建议 7.4 或 8.0+)
如果是内存问题:
在 wp-config.php 中添加:define( ‘WP_MEMORY_LIMIT’, ‘256M’ );
第四步:检查数据库
通过 phpMyAdmin 检查数据库表是否损坏
运行修复表操作
确认 wp-config.php 中的数据库信息正确
预防措施
保持更新:及时更新 WordPress 核心、主题和插件
使用正版:避免使用破解主题/插件,代码质量有保障
定期备份:使用主机备份功能定期备份
测试环境:重大更改前先在staging环境测试
选择可靠主机:避免超售严重的廉价共享主机