Wordpress return 插件无法激活,因为它触发了一个致命错误

Wordpress return Plugin could not be activated because it triggered a fatal error

我在激活我自己的 WordPress 插件时遇到奇怪的错误。

在激活插件时,我只收到消息 "Plugin could not be activated because it triggered a fatal error." 仅此而已(请参阅 http://prntscr.com/snxdkw )。我没有收到更多错误,在启用调试模式后我只收到 E_NOTICE 级别的错误,这并不重要。

该错误仅在实时服务器上显示,在本地一切正常。谷歌搜索没有效果

本地:
PHP: 7.3.16
WordPress: 5.4.1

服务器:
PHP: 7.3.16
WordPress: 5.4.1

我试过了:

  1. 在本地和服务器上启用调试日志(结果:没有严重错误)
  2. 修正了所有错误
  3. 在我本地的 WordPress 上重新激活插件(结果:本地没有同样的错误)
  4. 查看 PHP 登录服务器(结果:没有严重错误)
  5. 尝试从错误消息到 WP 核心中的错误处理程序以了解错误发起者(结果:未找到错误发起者)
  6. 在 register_activation_hook 和 register_deactivation_hook 中将调试消息写入 debug.log(结果:我没有收到调试消息,我认为 WordPress 无法到达 register_activation_hook() )

检查您在服务器上本地启用的 php 扩展程序。您也可以查看权限。如果您使用的是 ffmpeg 或其他扩展,如果它(共享的)可能在您的服务器上不可用。

这可能是由于以下原因:

  1. 编码错误
  2. 与 WordPress 冲突
  3. 与另一个插件冲突
  4. 与您的主题冲突 所以你必须检查可能的失败原因。

问题已解决。

json_decode() 结果为 null,但此数据放在具有数组类型变量的函数中。不知道为什么PHP没有报错

问题已通过内联检查线逐步解决。