情境:
页面中的个元素不显示。想查找原因,首先在模板中输出需要调试的变量。
真实的情况是,博客中不显示鲜花、臭蛋等投票内容。
步骤:
(1)根据网页的输出,用FireBug判断出div是div_click
(2)搜索template目录,可以找到好几个,逐个排查,确实是template/default/home/space_click.htm文件。
(3)分析space_click.htm文件,在文件前部分有个循环,输出$clicks,但是网页没有相应的内容。
(4)根据discuz的语法,可以直接在模板文件中“echo $变量”的方式来输出,但是不能直接输出数组。
(5)不需要查找template("space_click")来查找调用该模板的文件。
(6)找到缓存目录data/template目录,可以找到1_1_home_space_click.tpl.php,这个文件就是space_click.htm对应的php文件,可以直接把php代码写在里面,并且还有个好处,不需调试的时候,直接更新一下缓存就可以。
总结:
discuz是把模板文件解析为php代码,所以可以通过修改模板对应的php代码文件来达到调试的目的。
阅读(4963) | 评论(0) | 转发(0) |