Z-Blog 插件与主题的冲突排查:从白屏到定位的步骤

· zblog · 阅读 12
摘要

装了插件之后后台打不开、前台白屏,这类问题的排查有固定路径,慌乱重装是最差的选择。第一步:确认是不是插件引起的把 zb_users/plugin/ 下所有插件目录改名,加个 _bak 后缀。再刷新后台,能打开就说明是插件问题。这一步不要动数

装了插件之后后台打不开、前台白屏,这类问题的排查有固定路径,慌乱重装是最差的选择。

第一步:确认是不是插件引起的

把 zb_users/plugin/ 下所有插件目录改名,加个 _bak 后缀。再刷新后台,能打开就说明是插件问题。这一步不要动数据库,纯文件操作,可逆。

第二步:二分查找

插件多的时候逐个试很浪费。一半改名、一半保留,刷新看是否正常,逐步缩小范围。十个插件最多四轮就能定位。

第三步:看错误日志

PHP 错误日志一般在 /var/log/php-fpm.log 或站点目录下的 error_log。搜索 Fatal error 和 Stack trace,第一行通常就指向出问题的文件和行号。

第四步:判断冲突类型

现象常见原因
后台整站白屏插件在 Zbp_Load 里操作了系统路径
前台正常后台五百后台钩子里读了不存在的配置项
特定页面白屏模板钩子与本主题不兼容
能打开但功能失效两个插件用了同一个钩子名互相覆盖

第五步:主题还是插件

换成 Z-Blog 默认主题(default)再试。默认主题不挂钩子、不依赖额外函数,能排除一大半干扰。如果换默认主题后正常了,问题就在主题的 include.php。

最后提醒

排查期间不要反复增删插件:每次启用和停用都会触发配置写入,多次操作后配置可能残留。定位到问题插件后,先停用,再看它写的配置是否适合保留。