PHPCMS模板的基本结构
PHPCMS 的模板文件默认放在 phpcms/templates/ 下,按风格目录区分。每个模块又有独立模板,比如内容模块在 content/,评论模块在 comment/。模板以 .html 为后缀,但实际是 PHP 解析的标签文件,不能直接当静态页丢给浏览器。
一套完整模板通常包含首页、列表页、内容页、单页和公共头尾。公共部分用 {template "content","header"} 方式引入,改一处即可全站生效。
标签语法是核心
PHPCMS 模板不写原生 PHP,而是用标签调用数据。最常见的是 {pc:content action="lists" catid="6" num="10" order="id DESC"} 配合 {loop $data $r} 循环输出。列表页、内容页、专题页都靠这类标签取数。
掌握三个参数就能应付多数场景:catid 指定栏目,num 控制条数,order 决定排序。标签外层还可以加 page="$page" 实现分页,分页样式在 phpcms/libs/functions/global.func.php 里调整。
缓存与调试
改完模板看不到变化,通常是缓存没更新。PHPCMS 把标签编译结果缓存到 caches/ 目录,后台“更新缓存”或直接删对应缓存文件都能生效。调试时可在模板里临时加 {php echo $catid;} 查看变量,但正式环境务必删掉,避免暴露路径。
二次开发的注意点
直接改默认模板风险高,升级会覆盖。建议复制一套风格目录再改,后台切换风格即可。涉及数据逻辑的改动,优先写进自定义标签或模型,而不是把 SQL 塞进模板。模板里少做复杂查询,列表页循环内再查关联表,很容易拖慢打开速度。
PHPCMS 模板上手不难,难在克制:能用标签解决就不写逻辑,能复制就不覆盖。理清目录、标签、缓存这三件事,改模板的效率会明显提升。

