Discuz! 的模板系统非常灵活,其首页模板主要由 PHP 文件 和 HTML 模板文件 两部分组成,它们协同工作来生成最终的页面。

核心文件位置
Discuz! 的模板文件都存放在 static/ 目录下,而 PHP 控制文件则存放在 source/ 目录下。
PHP 控制文件 (逻辑层)
这是决定首页显示哪些内容、如何调用数据的“大脑”,首页的 PHP 文件位于:
/source/module/home/home.php
作用:
- 处理用户请求。
- 调用相应的函数从数据库获取数据(如帖子、公告、统计信息等)。
- 将处理好的数据传递给模板引擎。
- 最终加载并渲染 HTML 模板文件。
HTML 模板文件 (表现层)
这是定义首页实际布局和样式的“骨架”,首页的模板文件位于:

/static/html/home/{你的模板目录名}/index.htm
重要说明:
{你的模板目录名}:这是一个变量,代表你当前正在使用的模板,Discuz! 允许用户切换不同的模板主题。- 默认模板:通常是
default。 - 第三方模板:如果你安装了其他模板,目录名就是模板的名称,
mobile(移动端模板),theme_xxx等。
- 默认模板:通常是
如何找到你的模板目录名?
- 登录你的 Discuz! 后台。
- 进入 【界面】 -> 【风格管理】。
- 在风格列表中,查看“首页风格”那一列,你当前正在使用的风格的“风格名”就是你的模板目录名。
首页各模块的模板文件位置
首页通常由多个模块组成,如:顶部导航、公告栏、帖子列表、侧边栏等,这些模块的模板代码通常不是全部写在一个 index.htm 文件里,而是被拆分成了多个子模板,通过 PHP 文件进行组合。
这些子模板文件和 index.htm 在同一个目录下:

/static/html/home/{你的模板目录名}/
├── index.htm (首页主框架文件)
├-- header.htm (页面头部,包含 logo、导航等)
├-- footer.htm (页面底部)
├-- forumlist.htm (板块列表)
├-- announcement.htm (公告栏)
├-- space_list.htm (动态/空间列表)
├-- portal_list.htm (门户文章列表,如果开启了门户)
└-- ... (其他模块)
工作流程:
- 当你访问网站首页时,
/source/module/home/home.php文件被执行。 - PHP 文件会加载主模板文件
/static/html/home/{你的模板目录名}/index.htm。 - 在
index.htm文件中,会使用 Discuz! 的模板标签(如{template header})来引入其他的子模板文件。 - 所有子模板的内容被拼接到主框架中,生成完整的 HTML 页面并返回给浏览器。
如何修改首页模板?
了解了文件位置后,修改首页就变得非常清晰了。
简单的样式或文字修改
比如你想修改网站标题、更换 Logo 或调整某个区域的背景色。
- 确定模板目录:进入后台【风格管理】,确认你当前使用的模板目录名(
default)。 - 找到并编辑主模板文件:
- 使用 FTP 或文件管理器,连接到你的服务器。
- 进入目录:
/static/html/home/{你的模板目录名}/(/static/html/home/default/)。 - 下载
index.htm文件到本地,用 VS Code、Dreamweaver 等代码编辑器打开。
- 进行修改:
- 修改网站标题:通常在
header.htm文件中,找到类似<title>{if !empty($navtitle)}{$navtitle} - {/if}{if empty($nobbname)}{$_G['bbname']} - {/if}{lang homepage}</title>的代码。 - 更换 Logo:在
header.htm中找到<img src="{IMGDIR}/common/logo.png" ... />这样的代码,将logo.png替换成你自己准备好的图片,并确保图片已上传到/static/image/common/目录。 - 调整样式:通常在
index.htm或header.htm的头部会引入一个 CSS 文件,<!--{block style}--><link rel="stylesheet" type="text/css" href="static/home/{template}/style.css?{VERHASH}" /><!--{/block}-->,你可以编辑style.css文件来修改颜色、间距等样式。
- 修改网站标题:通常在
调整首页模块顺序或内容
比如你想把“公告栏”放到“板块列表”的上面。
-
编辑主框架文件:打开
/static/html/home/{你的模板目录名}/index.htm。 -
找到模块调用代码:你会看到类似这样的结构:
{template header} <div class="my-content"> <!-- 这里是公告栏的内容 --> {template announcement} <!-- 这里是板块列表的内容 --> {template forumlist} </div> {template footer} -
调整顺序:只需将
{template announcement}和{template forumlist}的代码行上下交换即可。
重要提示
-
备份!备份!备份! 在修改任何模板文件之前,务必备份原始文件,一旦修改出错,可以快速恢复。
-
使用 FTP/SFTP 工具 强烈建议使用 FileZilla 等专业的 FTP 客户端来上传和下载文件,避免使用网站后台自带的、功能较弱的文件管理器。
-
清除缓存 修改模板文件后,如果页面没有立即生效,请到 Discuz! 后台 【全局】 -> 【缓存设置】 中,点击“更新全部缓存”或“清除模板缓存”。
-
移动端模板 Discuz! 通常有独立的移动端模板,如果你需要修改手机首页,其文件路径为:
- PHP 文件:
/source/module/mobile/mobile.php - 模板文件:
/static/html/mobile/{你的移动端模板目录名}/index.htm
- PHP 文件:
希望这份详细的指南能帮助你准确定位和修改 Discuz! 的首页模板!
