核心概念:PHPCMS 模板的工作原理

在开始操作之前,你必须理解 PHPCMS 模板是如何工作的,这会让你少走很多弯路。

phpcms 创建模板文件夹
(图片来源网络,侵删)
  1. 模板引擎:PHPCMS 默认使用 smarty 作为模板引擎,这意味着你写的模板文件(.html)不是纯 HTML,而是包含了 smarty 的标签和语法。
  2. 模板目录结构:模板文件不是随意存放的,它们被组织在一个特定的目录结构中,PHPCMS 通过这个结构来加载正确的模板。
  3. 目录命名规则
    • 网站 ID:在 PHPCMS 后台,你可以创建多个站点(主站、手机站、英文站等),每个站点都有一个唯一的数字 ID,模板文件夹通常以这个 ID 命名。
    • 模板风格:你可以在同一个站点下创建不同的风格(default 默认风格,blue 蓝色风格,mobile 手机风格),这允许你为同一套数据提供不同的视觉呈现。

典型的模板目录结构如下:

/phpcms/
├── templates/          <-- 这是所有模板的根目录
│   ├── 1/              <-- ID 为 1 的站点模板(通常是主站)
│   │   ├── default/    <-- ID 为 1 的站点的 'default' 风格模板
│   │   │   ├── index/  <-- 'default' 风格下的 'index' 模板目录(常用于首页)
│   │   │   │   └── index.html  <-- 首页模板文件
│   │   │   ├── list/   <-- 列表页模板目录
│   │   │   │   └── category.html
│   │   │   ├── show/   <!-- 内容页模板目录
│   │   │   │   └── content.html
│   │   │   ├── header.html
│   │   │   └── footer.html
│   │   └── mobile/     <-- ID 为 1 的站点的 'mobile' 风格(手机站)
│   │       └── ...
│   └── 2/              <-- ID 为 2 的站点模板(英文站)
│       └── default/
│           └── ...

创建模板文件夹的详细步骤

假设我们要为 ID 为 1 的站点 创建一个名为 my_theme 的新模板文件夹。

步骤 1:确定你的网站 ID

  1. 登录你的 PHPCMS 后台。
  2. 在顶部菜单栏,找到并点击 」 -> 「网站管理」
  3. 在网站列表中,找到你要操作的网站,查看其「网站 ID」,主站的 ID 通常是 1

步骤 2:通过后台创建新模板风格(推荐方法)

这是最标准、最安全的方法,PHPCMS 会自动处理路径和权限。

  1. 登录 PHPCMS 后台。
  2. 在顶部菜单栏,点击 「模板」 -> 「风格管理」
  3. 在风格管理页面,点击 「增加风格」 按钮。
  4. 在弹出的表单中填写信息:
    • 风格名称:给你的新模板风格起一个名字,我的新主题,这个名字只会在后台显示。
    • 风格标识:这是关键!这里填写你想要的文件夹名,my_theme只能使用英文字母、数字和下划线
    • 所属栏目:选择这个风格属于哪个站点,如果你只有一个主站,就选择 ID 为 1 的那个。
    • 默认模板:可以暂时不选,等模板文件创建好后再设置。
  5. 点击 「提交」

操作完成后,PHPCMS 会在 /phpcms/templates/1/ 目录下自动为你创建一个名为 my_theme 的新文件夹。

phpcms 创建模板文件夹
(图片来源网络,侵删)

步骤 3:创建模板文件和子目录

/phpcms/templates/1/my_theme/ 文件夹已经存在了,但里面是空的,你需要向里面添加你的模板文件。

  1. 使用 FTP 或文件管理器

    • 通过 FTP 工具(如 FileZilla)或你的主机控制面板中的文件管理器,连接到你的服务器。

    • 导航到 /phpcms/templates/1/my_theme/ 目录。

      phpcms 创建模板文件夹
      (图片来源网络,侵删)
    • 在这个目录下,创建你需要的子文件夹和文件,一个标准的主题结构如下:

      /phpcms/templates/1/my_theme/
      ├── index/          <-- 存放首页相关模板
      │   └── index.html
      ├── list/          <-- 存放列表页模板
      │   └── category.html
      ├── show/          <-- 存放内容页模板
      │   └── content.html
      ├── header.html    <-- 公共头部
      ├── footer.html    <-- 公共底部
      └── style.css      <-- 公共样式表(可选,推荐放在 statics 目录)
  2. 创建模板文件内容

    • 打开 index.html 文件,编写你的首页模板代码,别忘了使用 smarty 语法。

    • 一个最简单的首页模板:

      {template "header","my_theme"}  <!-- 引用头部模板,my_theme是风格标识 -->
      <h1>欢迎来到我的新主题网站!</h1>
      <p>这是使用 {$_username} 登录的用户。</p>
      {template "footer","my_theme"}  <!-- 引用底部模板 -->

步骤 4:设置并应用新模板

  1. 设置默认模板

    • 回到 PHPCMS 后台,进入 「模板」 -> 「风格管理」
    • 找到你刚刚创建的 我的新主题,点击右侧的 「设置」
    • 你可以为不同类型的页面(首页、列表页、内容页等)指定你刚才创建的模板文件。
      • 首页模板:index/index.html
      • 列表页模板:list/category.html
      • 内容页模板:show/content.html
    • 点击 「提交」
  2. 应用到站点

    • 进入 」 -> 「网站管理」
    • 点击你网站的 「管理」「修改」 按钮。
    • 在网站信息页面,找到 「模板风格」 选项。
    • 从下拉列表中选择你刚刚创建的 我的新主题
    • 点击 「提交」

你的 PHPCMS 网站就已经成功切换到新创建的 my_theme 模板文件夹了,访问你的网站,你就能看到新模板的效果。


高级技巧与注意事项

  1. 模板继承与公共文件

    • 像上面的例子一样,使用 {template "header", "风格标识"}{template "footer", "风格标识"} 是一个好习惯,这样可以复用头部和底部代码,提高维护效率。
    • 将 CSS 和 JavaScript 文件放在 /phpcms/statics/ 目录下,然后在模板中通过 {$statics} 变量引用,<link rel="stylesheet" href="{$statics}css/my_theme.css">
  2. 如何复制一个现有主题?

    • 如果你想基于现有主题修改,最快的方法是直接复制整个主题文件夹。
    • 复制 /phpcms/templates/1/default//phpcms/templates/1/my_theme_copy/
    • 按照步骤 2 和步骤 4,在后台创建一个新的风格标识为 my_theme_copy 的风格,并把它应用到你的站点上。
  3. 权限问题

    • 确保你的 web 服务器(如 Apache 或 Nginx)用户对 /phpcms/templates/ 目录有写入权限,这样后台的“风格管理”功能才能正常工作,如果权限不足,你可能需要手动创建文件夹,然后通过 FTP 上传。
  4. 清理缓存

    • 在修改模板或切换主题后,如果页面没有更新,请记得去后台 「工具」 -> 「缓存管理」** 中清理一下模板缓存,缓存文件通常位于 /phpcms/caches/ 目录下。

通过以上步骤,你就可以在 PHPCMS 中自如地创建和管理自己的模板文件夹了,祝你建站顺利!