这个目录名存储在数据库的 pre_common_template 表中,与 styleid(风格ID)关联起来,下面我将详细解释如何找到它以及它的作用。

模板的“ID”就是模板文件夹的名称,如果你的模板文件夹是 defaultdefault 就是它的 ID,如果文件夹是 mobantestmobantest 就是它的 ID。


如何找到模板对应的“ID”(目录名)

主要有两种方法:

通过 FTP 或文件管理器查看(最直观)

这是最直接的方法,因为模板文件本身就存放在服务器上。

  1. 登录你的 FTP 客户端 或使用主机控制面板中的文件管理器。

  2. 导航到模板目录

    /static/      # 这是 Discuz! 存放静态资源(包括模板)的根目录
    └── image/    # 图片等
    └── js/       # JS 文件
    └── style/    # **CSS 和模板文件都在这个目录下**
  3. 进入 style 目录

    /static/style/
  4. 查看文件夹列表:在这个目录下,你会看到以 tpl_ 开头的文件夹。这些就是你的主题模板,去掉 tpl_ 前缀,剩下的部分就是模板的“ID”(目录名)。

    示例

    /static/style/
    ├── default/         # 这是默认模板,它的 ID 是 "default"
    ├── forumlist/       # 这是一个列表页模板,它的 ID 是 "forumlist"
    └── mobantest/       # 这是一个你自定义的模板,它的 ID 是 "mobantest"

注意pre_common_style 表中 directory 字段的值,就是这里 tpl_ 后面的名称。

通过数据库查询(最精确)

如果你想通过数据库直接获取所有模板及其对应的 ID,可以执行 SQL 查询。

  1. 登录你的数据库管理工具(如 phpMyAdmin)。

  2. 选择你的 Discuz! 数据库(通常以 pre_ 开头)。

  3. 找到 pre_common_template,这个表存储了模板和风格的关系。

  4. 执行查询:你可以直接查看这个表的所有内容,或者按需筛选。

    SELECT * FROM `pre_common_template`;

    查询结果示例

templateid styleid name directory copyright
1 1 portal portal Comsenz Inc.
2 1 forum_default default Comsenz Inc.
3 1 forumlist forumlist Comsenz Inc.
4 2 forum_mobantest mobantest My Company

字段解释

  • templateid: 这是系统为每个模板记录分配的唯一数字 ID,但你在修改模板时基本用不到它。
  • styleid: 这是关键,它指向 pre_common_style 表中的某个风格,一个模板可以被多个风格使用。
  • directory: 这就是你要找的模板“ID”,即模板文件夹的名称(不含 tpl_ 前缀)。
  • name: 模板的显示名称。

从上表可以看出,styleid2 的风格,使用的是 directorymobantest 的模板。


模板“ID”有什么用?

知道了模板的 ID(目录名)后,你可以在很多地方进行操作:

  1. 修改模板文件: 当你通过后台 “界面” -> “风格” -> “编辑模板” 进入模板编辑器时,选择的模板名称后面通常会显示其目录名,这能帮你准确定位到需要修改的模板文件。

  2. 切换主题风格: 在后台 “界面” -> “风格” 页面,你可以为不同的风格(如电脑版、手机版)选择不同的模板,这里的下拉列表中显示的就是模板的名称,其对应的 ID directory 字段的值。

  3. 二次开发或调用: 在编写插件或修改程序时,如果你想动态地加载某个模板,可能会用到这个目录名,在 PHP 代码中,你可能需要指定模板路径:

    // 加载 ID 为 'mobantest' 的模板中的 'forum_viewthread.htm' 文件
    $templateId = 'mobantest';
    $templateFile = $templateId . '/forum_viewthread.htm';
    // ... 后续渲染逻辑
  4. 排查问题: 当网站显示异常时,检查当前使用的模板 ID 是否正确,可以帮助你判断是不是模板文件损坏或路径错误导致的问题。

  • 模板的“ID”就是其目录名default, mobantest
  • 它存储在数据库的 pre_common_template 表的 directory 字段中。
  • 最简单的方法是通过 FTP 查看 /static/style/ 目录下的文件夹来获取。
  • 这个 ID 是你在 Discuz! 后台管理、文件修改和二次开发中识别和引用模板的关键。