Z-Blog 主题调试:模板白屏、报错行号对不上的排查顺序
摘要
改主题时最怕白屏。没有报错,什么都没有,页面就是一片白。按下面这个顺序查,多数情况十分钟能定位。第一步:看有没有报错先确认调试模式开了。后台设置里把调试打开、错误日志打开。没开的话,PHP 的致命错误不会显示出来,只会在日志里。日志在 zb
改主题时最怕白屏。没有报错,什么都没有,页面就是一片白。
按下面这个顺序查,多数情况十分钟能定位。
第一步:看有没有报错
先确认调试模式开了。后台设置里把调试打开、错误日志打开。
没开的话,PHP 的致命错误不会显示出来,只会在日志里。日志在 zb_users/logs 下面,取最新那个文件。
没日志先看这里,别急着改代码。
第二步:行号和实际对不上
模板报错的行号,指的是编译后的 PHP 文件,不是你写的 .php 模板。
编译后的文件在 zb_users/cache 下,文件名带编译标识。找到对应文件,按报错行号去看,才准。
这一点特别多人卡住,一直在模板里数行,永远数不到。
第三步:清缓存再试
改了模板没重编译,看到的是旧结果。清一次缓存,让它重新编译。
如果清了还是老样子,说明你改的文件根本没被加载。回去看 include 里引的是不是这个路径。
第四步:二分法定位
整页白屏,说明是致命错误,不是逻辑错。
把模板里最近加的那段注释掉,刷新。正常了,问题就在那段。还白,继续往前注释。
别一行一行读。注释比读快。
常见三个原因
拼错的函数名。PHP 8 下未定义函数直接致命。
少了一个花括号或者 endif。
访问了 null 的属性。这条最隐蔽,日志里显示 Trying to get property of non-object。
改完备份
每次改动前留一份备份。文件名带时间戳。
改坏了直接回滚,比在现场修快得多。
2026年10月05日 14:57
前后30天 · 点日期看归档
9月5日
9月6日
9月7日
9月8日
9月9日
9月10日
9月11日
9月12日
9月13日
9月14日
9月15日
9月16日
9月17日
9月18日
9月19日
9月20日
9月21日
9月22日
9月23日
9月24日
9月25日
9月26日
9月27日
9月28日
9月29日
9月30日
10月1日
10月2日
10月3日
10月4日
10月5日
10月6日
10月7日
10月8日
10月9日
10月10日
10月11日
10月12日
10月13日
10月14日
10月15日
10月16日
10月17日
10月18日
10月19日
10月20日
10月21日
10月22日
10月23日
10月24日
10月25日
10月26日
10月27日
10月28日
10月29日
10月30日
10月31日
11月1日
11月2日
11月3日
11月4日