下面我将为你提供一个非常详细、从零开始的图文式教程,教你如何在 PHPCMS V9 中添加一个全新的模板。


核心概念

在开始之前,你需要理解几个关键概念:

  1. MVC 架构

    • M (Model):模型,负责数据处理和业务逻辑,对应 PHP 文件(如 index.php)。
    • V (View):视图,负责数据显示,对应 HTML 模板文件(如 index.html)。
    • C (Controller):控制器,是模型和视图的桥梁,负责接收请求、调用模型、并加载视图,在 PHPCMS V9 中,控制器通常也写在 PHP 文件里(如 index.php)。
  2. 模板目录结构: PHPCMS V9 的模板文件存放在 statics/ 目录下,标准的目录结构如下:

    statics/
    └── templates/                  // 所有模板的根目录
        ├── default/               // 默认模板风格
        │   ├── content/           // '内容'模块的模板
        │   │   └── index/         // '首页'的模板
        │   │       ├── index.html // 首页模板文件
        │   │       └── category/   // '栏目列表页'的模板
        │   │           └── index.html
        │   └── ...
        └── my_new_template/       // 你要创建的新模板风格
            └── content/
                └── index/
                    └── index.html  // 你的新首页模板
  3. 模板引擎: PHPCMS V9 使用自己开发的模板引擎,其语法特点是用大括号 包裹。

    • {php echo 'Hello World';} // 执行 PHP 代码
    • {$title} // 输出变量 $title
    • {loop $data $k $v} // 循环输出数组 $data
    • {if $condition} ... {else} ... {/if} // 条件判断

详细步骤:创建一个全新的首页模板

假设我们要创建一个名为 "my_new_template" 的新模板风格,并为其设置一个全新的首页。

第一步:创建模板目录结构

我们需要在 statics/templates/ 目录下创建一个新的文件夹来存放我们的模板文件。

  1. 通过 FTP 或文件管理器登录你的服务器。

  2. 进入 phpcms/ 目录,找到 statics/templates/

  3. templates/ 目录下,创建一个新文件夹,命名为 my_new_template

  4. my_new_template 文件夹内,按照默认模板的结构,依次创建以下目录:

    • content/
    • content/index/

    你的目录结构现在应该是:

    statics/
    └── templates/
        ├── default/
        └── my_new_template/
            └── content/
                └── index/

第二步:编写模板文件

我们在 my_new_template/content/index/ 目录下创建首页模板文件 index.html

  1. my_new_template/content/index/ 目录下,新建一个文件,命名为 index.html
  2. 用你喜欢的编辑器(如 VS Code, Sublime Text, Notepad++)打开 index.html,并编写一些简单的 HTML 内容。

示例代码 (my_new_template/content/index/index.html):

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">我的新首页 - {sitename}</title>
    <meta name="keywords" content="{sitekeywords}">
    <meta name="description" content="{sitedescription}">
    <link rel="stylesheet" type="text/css" href="{CSS_PATH}my_new_template/style.css" /> <!-- 引入CSS,注意路径 -->
</head>
<body>
    <div class="header">
        <h1>欢迎来到我的新首页!</h1>
    </div>
    <div class="content">
        <h2>最新文章列表</h2>
        {loop $data $r}
        <div class="post-item">
            <h3><a href="{$r.url}">{$r.title}</a></h3>
            <p class="date">发布时间:{$r.inputtime}</p>
            <p class="summary">{str_cut($r.description, 200)}</p>
        </div>
        {/loop}
    </div>
    <div class="footer">
        <p>版权所有 &copy; {date('Y', TIMESTAMP)} {sitename}</p>
    </div>
</body>
</html>

代码解释:

  • {sitename}, {sitekeywords}, {sitedescription}:这是 PHPCMS V9 的系统变量,会自动替换为网站的全局信息。
  • {CSS_PATH}:这是一个系统常量,指向 statics/ 目录。{CSS_PATH}my_new_template/style.css 表示 statics/my_new_template/style.css
  • {$r.url}, {$r.title}, {$r.inputtime}, {$r.description}:这些是从后台传递过来的数据变量。$data 是一个包含文章数据的数组,{loop $data $r} 循环遍历这个数组,$r 就是每一篇文章的数据对象。
  • {str_cut($r.description, 200)}:这是一个系统函数,用于截取字符串,这里用来截取文章摘要前200个字符。

注意:为了让样式生效,你还需要在 statics/my_new_template/ 目录下创建一个 style.css 文件,并添加一些基本样式。

第三步:在后台创建并应用新模板

模板文件已经创建好了,现在需要到 PHPCMS 后台告诉系统这个新模板的存在,并将其应用到首页。

  1. 登录 PHPCMS 后台

  2. 进入 ” -> “模板风格管理”

  3. 点击右上角的 “添加模板风格” 按钮。

  4. 在弹出的表单中填写信息:

    • 风格名称my_new_template (或你喜欢的名字,如“简约风格”)
    • 风格目录my_new_template (必须与你在 statics/templates/ 下创建的文件夹名完全一致)
    • 默认模板:保持默认即可。
    • 风格描述:可以写“我创建的第一个新模板风格”。
  5. 点击 “提交”,现在你的新模板风格就已经被系统识别了。

  6. 将新模板应用到首页

    • 回到后台首页,进入 “站点设置” -> “站点管理”
    • 选择你要修改的站点(通常是默认的 default 站点),点击右侧的 “修改”
    • 在站点信息页面,找到 “首页模板” 这一项。
    • 在下拉菜单中,你应该能看到你刚刚创建的 my_new_template 风格下的首页模板,路径通常显示为 content/index/index
    • 选择它。
    • 点击 “提交” 保存。

第四步:清空缓存并查看效果

PHPCMS V9 有强大的缓存机制,修改了模板或后台设置后,需要清空缓存才能看到效果。

  1. 在后台首页,找到右上角的 “系统” -> “缓存管理”
  2. 勾选 “更新全部缓存” 或直接点击 “更新” 按钮。
  3. 等待缓存更新完成。

打开你的网站首页,你应该就能看到你用 my_new_template 模板风格渲染出的新页面了!


总结与进阶

  • 核心流程:建目录 -> 写模板文件 -> 后台添加风格 -> 后台应用模板 -> 清空缓存。
  • 其他页面模板:创建其他页面的方法完全相同,要创建一个文章详情页,你需要在 my_new_template/content/ 下创建 show 目录,然后在里面放 index.html 文件,后台的“内容模型”->“内容设置”里可以指定文章详情页模板。
  • 模板标签:PHPCMS V9 的模板标签非常丰富,除了上面提到的,还有 pc:get (获取数据)、category (栏目信息) 等,建议多研究一下默认模板的写法,这是最好的学习方式。
  • 调试:如果模板不显示或显示异常,首先检查:
    1. 文件路径和文件名是否正确。
    2. 后台模板风格和应用设置是否正确。
    3. 是否清空了缓存。
    4. 模板文件中的变量名和循环语法是否正确。

希望这个详细的教程能帮助你成功地在 PHPCMS V9 中添加模板!