PHPCMS 是一个在中国非常经典和流行的老牌 PHP 开源网站管理系统(CMS),它的模板系统是其核心功能之一,理解了模板系统,就能快速搭建和定制网站。

下面我将从几个方面为你全面解析 PHPCMS 的网站模板:
PHPCMS 模板系统概述
PHPCMS 的模板系统基于 PHP + HTML,通过其特定的模板标签(类似函数)来分离网站的内容与样式,这种设计理念使得不懂 PHP 的网页设计师也能轻松修改网站的布局和外观。
核心思想:
- 模板文件(.html):负责网站的外观,即 HTML 结构和 CSS 样式。
- PHP 标签(
{php}标签({content}等):负责动态调用后台数据和内容。 - 数据通过标签调用:后台的内容、分类等信息,不是直接写在模板里,而是通过标签从数据库中取出并显示。
模板文件结构与存放位置
了解文件结构是修改模板的第一步,PHPCMS 的模板文件存放在固定的目录下,结构清晰。

假设你的 PHPCMS 安装在 D:\phpcms 目录下,那么模板文件主要位于:
/phpcms/
└── templates/
└── default/ // 默认模板文件夹
├── index/ // 首页模板文件夹
│ ├── index.html // 首页模板文件
│ └── ...
├── content/ // 内容页模板文件夹
│ └── show.html // 内容页(文章详情页)模板文件
├── category/ // 列表页/栏目页模板文件夹
│ └── index.html // 列表页模板文件
└── ... // 其他页面模板,如搜索页、留言页等
说明:
templates/:所有模板的根目录。default/:默认的模板套件名称,你可以创建自己的模板套件,mytemplate,然后在后台选择使用。index/,content/,category/:分别对应首页、内容页、列表页,PHPCMS 会根据你访问的页面类型,自动加载对应目录下的模板文件。
核心模板标签详解
PHPCMS 的模板功能主要通过标签实现,以下是常用标签的分类和示例:
内容调用标签 ({content})
这是最核心、最常用的标签,用于在首页、列表页等地方调用文章列表。

基本语法:
{content module="news" catid="1" num="10" order="id DESC"}
<li>
<a href="{$r['url']}">{$r['title']}</a>
<span>{$r['inputtime']}</span>
</li>
{/content}
参数解释:
module="news":指定要调用的模型(数据表),news是新闻模型,需要在后台“内容” -> “模型管理”中查看。catid="1":指定要调用的栏目 ID。0表示调用所有栏目。num="10":调用文章的数量。order="id DESC":排序方式。id DESC按 ID 降序(最新的在前),id ASC按升序,inputtime DESC按发布时间降序。where="status=1":附加查询条件,例如只调用已发布的文章。page="1":开启分页。
循环变量:
{$r['title']}。{$r['url']}:文章链接地址(系统自动生成)。{$r['inputtime']}:文章发布时间。{$r['description']}:{$r['thumb']}:文章缩略图。
栏目标签 ({pc})
{pc} 标签是一个更强大的循环标签,不仅可以调用内容,还可以调用其他数据,如友情链接、自定义内容等。
示例:调用指定栏目的子栏目
{pc:get sql="SELECT * FROM `v9_category` WHERE parentid=7 AND module='news'" num="10" return="data"}
{loop $data $r}
<a href="{$r['url']}">{$r['catname']}</a>
{/loop}
{/pc}
参数解释:
sql="...":直接编写 SQL 语句查询数据库。num="10":返回记录数。return="data":将查询结果赋值给变量$data。{loop $data $r}:循环遍历$data数组,$r是当前循环的变量。
全局/系统标签
这些标签用于获取系统信息或执行简单的 PHP 代码。
{siteurl}:网站根 URL,http://www.yourdomain.com。{if condition="$CATEGORY && $CATEGORY['parentid']"}...{else}...{/if}:条件判断,常用于判断当前栏目是否有父级。{php echo date('Y-m-d H:i:s');}:直接执行 PHP 代码,输出当前时间。{L('submit')}:调用后台语言包中的文字,方便多语言切换。
如何制作或修改一个 PHPCMS 模板?
制作一个全新的模板通常遵循以下步骤:
-
准备静态 HTML 页面:
使用 Dreamweaver、VS Code 或 Sublime Text 等工具,先制作一个完整的静态 HTML 网站,这个页面应该包含网站的所有元素,如头部、导航、主体内容、底部等。
-
切图和整理:
- 将 HTML 页面中的图片、CSS、JavaScript 文件整理好。
- 将 CSS 文件放入模板目录的
/statics/css/下。 - 将 JS 文件放入
/statics/js/下。 - 将图片放入
/statics/images/下。 - 在 HTML 中修改这些文件的引用路径,
<link rel="stylesheet" href="{siteurl}templates/default/statics/css/style.css">。
-
替换静态内容为动态标签:
- Logo:将
<img src="images/logo.png">替换为<a href="{siteurl}"><img src="{siteurl}templates/default/statics/images/logo.png"></a>。 - 主导航:使用
{pc}标签调用顶级栏目,循环生成导航菜单。 - 首页文章列表:使用
{content}标签调用不同栏目的文章。 - 页脚信息:如版权信息,可以直接写成固定的 HTML,也可以调用后台的全局变量。
- Logo:将
-
安装和启用模板:
- 将制作好的整个模板文件夹(
mytemplate)通过 FTP 上传到/phpcms/templates/目录下。 - 登录 PHPCMS 后台,进入“模板” -> “风格管理”,点击“导入风格”,选择你的模板文件夹
mytemplate。 - 导入成功后,在“风格管理”列表中找到你的模板,点击“设为默认”即可。
- 将制作好的整个模板文件夹(
PHPCMS 模板的优缺点
优点:
- 学习成本低:对于熟悉 HTML 入门相对简单。
- 功能稳定:作为老牌 CMS,其核心功能非常成熟稳定,插件和模板资源丰富。
- SEO 友好:URL 可以自定义,利于搜索引擎优化。
- 扩展性强:通过模型和字段,可以轻松构建不同类型的网站,如企业站、新闻站、门户站等。
缺点:
- 技术老旧:基于较老的 PHP 架构,对 PHP 7+ 版本的兼容性可能存在一些问题,且与现代框架(如 Laravel, ThinkPHP)相比,代码结构和安全性稍逊一筹。
- 模板标签不够灵活:标签系统虽然强大,但在处理复杂逻辑时不如现代模板引擎(如 Twig, Blade)灵活。
- 官方更新缓慢:近年来官方更新和维护力度减弱,社区活跃度不如从前。
总结与建议
PHPCMS 是一个强大且经典的建站系统,尤其适合需要快速搭建企业官网、资讯门户等网站的用户,它的模板系统是其核心优势之一。
给你的建议:
- 如果你是新手,想快速做一个传统网站:PHPCMS 是一个不错的选择,你可以直接下载现成的模板进行修改,学习成本较低。
- 如果你是开发者,希望构建现代化、高性能的网站:你可能需要考虑使用更现代的 CMS,如 WordPress(生态最丰富)、Typecho(轻量优雅)或基于 ThinkPHP / Laravel 框架开发的系统。
- 如果你正在维护一个旧的 PHPCMS 网站:了解其模板系统对于日常的维护和改版至关重要,请确保在修改前备份好模板和数据库。
希望这份详细的指南能帮助你更好地理解和使用 PHPCMS 的网站模板!
