目录
-
(图片来源网络,侵删)- 1 什么是 EmpireCMS?
- 2 环境准备
- 3 安装步骤
- 4 后台登录与界面初识
-
- 1 核心概念:栏目、模型、内容
- 2 栏目管理:网站的骨架
- 3 模型管理:内容的容器
- 4 内容管理:网站的血肉
- 5 系统设置:让网站更符合你的需求
-
- 1 理解模板机制
- 2 模板文件结构
- 3 常用模板标签(函数)
- 4 首页模板制作示例
- 5 列表页与内容页模板
- 6 调用数据:常用数据调用方法
-
- 1 伪静态设置
- 2 数据库备份与恢复
- 3 插件使用
- 4 常见问题与解决方案 (FAQ)
第一部分:新手入门 - 从零开始搭建网站
1 什么是 EmpireCMS?
EmpireCMS(帝国网站管理系统)是一款国产的开源 PHP 网站管理系统,它以其功能强大、扩展灵活、操作简单而闻名,特别适合快速搭建企业官网、新闻门户、博客、电商等各类网站。

- 核心特点:
- 免费开源:完全免费,使用 PHP + MySQL 构建。
- 功能全面:内置新闻、图片、下载、商城等多种模型,满足基本需求。
- 灵活扩展:通过自定义模型和插件,可以轻松实现任何特殊功能。
- 模板独立:前后台完全分离,模板制作自由度高,符合 W3C 标准。
- SEO 优化:内置强大的 SEO 优化功能,有利于搜索引擎收录。
2 环境准备
在安装 EmpireCMS 之前,你需要搭建一个 Web 服务器环境,最简单的方式是使用集成环境包。
-
推荐软件:
- phpStudy (Windows 用户首选,集成度高,一键切换 PHP 版本)
- XAMPP (跨平台,支持 Windows, macOS, Linux)
- 宝塔面板 (服务器/VPS 用户首选,图形化管理,非常方便)
-
环境要求:
- PHP 版本:推荐
PHP 7.1~PHP 7.4版本(新版本如 PHP 8.0+ 可能存在兼容性问题,需自行测试)。 - MySQL 版本:
0及以上版本。 - Web 服务器:
Apache或Nginx。(Apache 配置更简单,推荐新手使用)。
- PHP 版本:推荐
3 安装步骤
-
下载程序:
- 访问 EmpireCMS 官方网站:
https://www.phome.net/ - 在“下载”页面下载最新稳定版,下载格式通常是
.zip或.rar压缩包。
- 访问 EmpireCMS 官方网站:
-
上传文件:
- 将下载的压缩包解压。
- 通过 FTP 工具(如 FileZilla)将解压后的所有文件上传到你网站的根目录下,通常是
htdocs、www或public_html。
-
创建数据库:
- 登录你的 phpStudy 或宝塔面板的控制面板。
- 进入数据库管理(如 phpMyAdmin)。
- 创建一个新的数据库,并记下数据库名、用户名和密码。(数据库名
empire,用户名root,密码root)。
-
运行安装向导:
- 在浏览器中访问你的域名,
http://www.yourdomain.com。 - 如果看到安装界面,说明上传成功,点击“我同意”进入下一步。
- 环境检测:系统会自动检测你的 PHP、MySQL 等环境,如果出现红色警告,请根据提示修改环境配置(通常是 PHP 版本不兼容,需要在 phpStudy 中切换版本)。
- 数据库配置:填写你刚刚创建的数据库名、用户名、密码等信息。
- 网站信息:设置网站名称、管理员账号和密码。请务必记住你的管理员密码!
- 完成安装:点击“开始安装”,等待片刻即可,安装成功后,系统会提示你删除
/e/install/目录,这是为了安全。
- 在浏览器中访问你的域名,
4 后台登录与界面初识
-
登录地址:
你的域名/e/adminhttp://www.yourdomain.com/e/admin
-
登录信息:使用你安装时设置的管理员账号和密码登录。
-
后台界面主要区域:
- 顶部导航栏:包含系统信息、快捷操作、退出登录等。
- 左侧菜单栏:这是核心功能区,包含了所有管理模块。
- 内容管理:管理网站的所有内容,包括栏目、模型、评论等。
- 系统设置:配置网站的全局参数,如系统变量、会员、数据库等。
- 模板管理:管理网站的前端模板。
- 插件管理:安装和管理各种功能插件。
- 主操作区:显示当前选中菜单的具体内容。
第二部分:核心功能详解 - 管理你的网站
1 核心概念:栏目、模型、内容
理解这三个概念是掌握 EmpireCMS 的关键。
- 栏目:网站的分类或目录,就像书的目录一样,用于组织内容。“公司新闻”、“产品中心”、“关于我们”。
- 模型的定义或格式,它规定了某个栏目下的内容应该包含哪些字段。“新闻模型”可能包含“标题”、“发布时间”、“内容摘要”、“正文”、“缩略图”等字段;“产品模型”可能包含“产品名称、规格、价格、产品图”等。
- 具体的数据,一篇新闻稿、一个产品信息。
关系:栏目 使用 模型 来管理 。
2 栏目管理
- 进入 管理] -> [栏目管理] -> [管理栏目]。
- 添加顶级栏目:
- 点击“增加顶级栏目”。
- 栏目名称:填写栏目名,如“公司新闻”。
- 栏目目录:系统会自动生成,也可以自定义,用于生成 URL。
- 绑定模型:选择该栏目将要使用的内容模型,如“新闻系统”。
- 列表模板:选择该栏目列表页要使用的模板文件。
- 内容页模板:选择该栏目内容页要使用的模板文件。
- 其他选项根据需要设置,然后保存。
- 添加子栏目:操作类似,在添加时选择“增加子栏目”,并选择其父级栏目。
3 模型管理
- 进入 管理] -> [管理系统模型]。
- 使用内置模型:系统已经预设了新闻、图片、下载等常用模型,你可以直接在栏目管理中绑定使用。
- 创建自定义模型(这是 EmpireCMS 的强大之处):
- 点击“增加模型”。
- 模型名称:如“招聘信息”。
- 数据表:系统自动生成,无需修改。
- 字段管理:这是最关键的一步,点击你创建好的模型名称,进入字段管理。
- 增加字段:
- 字段名:英文,如
job_title。 - 字段标识:中文,如“职位名称”。
- 字段类型:根据需要选择,如“文本框”、“文本域”、“单选框”、“图片”等。
- 是否在发布内容时填写:勾选。
- 是否在列表页显示:如果想在列表页显示此字段,需要勾选并设置模板变量名。
- 字段名:英文,如
- 保存字段后,这个新字段就会出现在内容发布表单中了。
4 内容管理
- 进入 管理] -> [管理内容]。
- :
- 点击顶部的“增加信息”。
- 选择要发布内容的栏目。
- 、选择标题颜色、设置属性(如头条、推荐)。
- 在正文编辑器中填写内容,支持富文本、插入图片、视频等。
- 根据你绑定的模型,填写其他自定义字段(如产品价格、缩略图等)。
- 点击“提交”或“保存草稿”。
- :
列表中,你可以进行审核、修改、删除、移动、置顶等操作。
5 系统设置
- 进入 [系统设置] -> [系统参数设置]。
- 基本参数:设置网站名称、公司名称、版权信息、网站路径等。
- 信息设置:设置默认内容模型、是否审核、伪静态开关等。
- Email 设置:配置发送邮件功能,用于会员注册、密码找回等。
- 其他设置:根据需要逐步配置,如会员设置、数据库管理、备份等。
第三部分:模板与前端 - 打造个性化网站
1 理解模板机制
EmpireCMS 的模板是完全独立的,后台管理内容和数据,前台通过模板来展示数据,修改模板不会影响数据库,非常安全。
模板文件都是 .php 文件,里面混合了 HTML 代码和 EmpireCMS 的模板标签(函数)。
2 模板文件结构
上传到 /e/template/ 目录下的文件夹就是一套模板,一个典型的模板结构如下:
/e/template/
└── default/ // 模板文件夹名
├── index/ // 首页相关
│ └── index.php
├── list/ // 列表页相关
│ └── news/ // “新闻”栏目的列表页
│ └── index.php
│ └── product/ // “产品”栏目的列表页
│ └── index.php
├── show/ // 内容页相关
│ └── news/ // “新闻”栏目的内容页
│ └── index.php
├── public/ // 公共文件
│ ├── header.php // 公共头部
│ └── footer.php // 公共底部
└── style.css // 样式文件
3 常用模板标签(函数)
<?php ecmsCheckShowKey($classid); ?>页密码验证标签,必须放在内容页最顶部。$navinfor页专用变量,代表当前内容的所有信息。$navinfor['title']是标题,$navinfor['newstext']是正文。$GLOBALS['navclassid']:当前栏目的 ID。$class_r[$classid]:获取当前栏目的信息。$class_r[$classid]['classname']是栏目名。$public_r['newsurl']:网站地址。
4 首页模板制作示例
打开 /e/template/default/index/index.php。
<?php
require('public/header.php'); // 引入公共头部
?>
<div class="main">
<h1>欢迎来到我的网站</h1>
<!-- 调用新闻栏目ID=1下的最新10条数据 -->
<div class="news-list">
<h2>最新新闻</h2>
<?php
$news_sql = $empire->query("select * from {$dbtbpre}ecms_news where classid=1 order by newstime desc limit 10");
while($news_r = $empire->fetch($news_sql)) {
// 格式化时间
$newstime = date('Y-m-d', $news_r[newstime]);
// 截取标题
$title =esub($news_r[title], 30, '...');
// 构建链接
$titleurl =GetNewsUrl($news_r[id],$news_r[classid]);
?>
<li>
<span><?=$newstime?></span>
<a href="<?=$titleurl?>"><?=$title?></a>
</li>
<?php
}
?>
</div>
<!-- 其他板块... -->
</div>
<?php
require('public/footer.php'); // 引入公共底部
?>
5 列表页与内容页模板
- 列表页:通常使用
list循环来显示多个内容条目,模板变量$GLOBALS['navclassid']用于获取当前栏目信息。 - 内容页:直接使用
$navinfor变量来显示当前内容,必须包含密码验证标签。
6 调用数据:常用数据调用方法
除了直接写 SQL,帝国提供了更强大的 灵动标签。
灵动标签基本语法:
[e:loop={栏目ID, 显示条数, 操作类型, 只显示有标题图片,附加SQL条件,排序}]
// 循环内容
<a href="<?=$bqsr[titleurl]?>" target="_blank"><?=$bqr[title]?></a>
[/e:loop]
栏目ID:可以是具体ID,如'1';也可以是 表示所有栏目;'0'表示首页推荐。显示条数:如10。操作类型:如'new'表示按发布时间排序。$bqr:当前循环到的记录信息数组,如$bqr[title]是标题。$bqsr:当前循环到的记录相关信息数组,如$bqsr[titleurl]是链接地址。
示例:调用首页推荐文章
[e:loop={'',10,'','r.recommend=1','newstime DESC'}]
<li>
<a href="<?=$bqsr[titleurl]?>" target="_blank"><?=$bqr[title]?></a>
</li>
[/e:loop]
第四部分:进阶技巧与常见问题
1 伪静态设置
伪静态有利于 SEO 和用户体验。
- 后台开启:
- 进入 [系统设置] -> [系统参数设置] -> [信息设置]。
- 将 “是否使用伪静态” 设置为 “是”。
- 服务器配置:
- Apache:确保
/e/data/dbcache/目录下有rewrite_1.php文件,在网站根目录的.htaccess文件中,将rewrite_1.php的内容复制进去即可。 - Nginx:在 Nginx 的配置文件中,添加以下规则并重载 Nginx。
rewrite ^([^\.]*)/listinfo-([0-9]+)-([0-9]+)\.html$ $1/e/action/ListInfo/index.php?classid=$2&page=$3 last; rewrite ^([^\.]*)/listinfo-([0-9]+)\.html$ $1/e/action/ListInfo/index.php?classid=$2 last; rewrite ^([^\.]*)/showinfo-([0-9]+)-([0-9]+)-([0-9]+)\.html$ $1/e/action/ShowInfo/index.php?classid=$2&id=$3&page=$4 last; rewrite ^([^\.]*)/showinfo-([0-9]+)-([0-9]+)\.html$ $1/e/action/ShowInfo/index.php?classid=$2&id=$3 last; rewrite ^([^\.]*)/infotype-([0-9]+)-([0-9]+)\.html$ $1/e/action/InfoType/index.php?classid=$2&page=$3 last; rewrite ^([^\.]*)/infotype-([0-9]+)\.html$ $1/e/action/InfoType/index.php?classid=$2 last; rewrite ^([^\.]*)/tags-(.+?)-([0-9]+)\.html$ $1/e/action/ShowSearch/index.php?keyboard=$2&page=$3 last; rewrite ^([^\.]*)/tags-(.+?)\.html$ $1/e/action/ShowSearch/index.php?keyboard=$2 last;
- Apache:确保
2 数据库备份与恢复
- 备份:进入 [系统设置] -> [数据备份],可以选择“备份所有表”或“备份指定表”,然后执行备份,备份文件会保存在
/e/backup/目录下。 - 恢复:同样在数据备份页面,选择“从备份文件恢复”,然后选择备份文件进行恢复。操作前请务必备份当前数据库!
3 插件使用
- 下载插件:从帝国CMS官方插件库或其他可信来源下载插件包。
- 上传安装:将插件包解压,通常包含
e文件夹,将e文件夹内的内容覆盖到你网站根目录下的e文件夹中。 - 后台安装:进入 [插件管理] -> [插件管理],找到新上传的插件,点击“安装”或“启用”。
- 使用插件:根据插件说明,通常在系统菜单的某个位置会出现新的功能入口。
4 常见问题与解决方案 (FAQ)
-
Q1: 安装时提示
PHP 版本过低或MySQL 版本过低?A: 升级你的 PHP 或 MySQL 版本,在 phpStudy 或宝塔面板中可以轻松切换。
-
Q2: 后台登录后一片空白,或者提示
No input file specified?- A: 通常是 PHP 的
cgi.fix_pathinfo选项未开启,在 php.ini 中找到cgi.fix_pathinfo,将其值设置为1,然后重启 Apache 或 Nginx。
- A: 通常是 PHP 的
-
Q3: 上传图片失败,提示
没有上传权限或目录不可写?- A: 检查
/e/data、/e/upload等目录的权限,确保 Web 服务器(如www或apache用户)对这些目录有读写权限,在 Linux 下可以使用chmod -R 755 目录名和chown -R www:www 目录名来修改。
- A: 检查
-
Q4: 模板修改后网站没有变化?
- A1: 确认你修改的是正确的模板文件。
- A2: 清理浏览器缓存。
- A3: 检查后台的“刷新缓存”功能,在 [系统设置] -> [刷新缓存] 中刷新所有缓存。
-
Q5: 如何更换网站模板?
- A: 将新的模板文件夹上传到
/e/template/目录下,然后进入 [模板管理] -> [默认模板设置],将首页、栏目页、内容页等默认模板设置为你新上传的模板文件即可。
- A: 将新的模板文件夹上传到
希望这份详细的教程能帮助你快速上手并精通 EmpireCMS!在实践中遇到问题,多查阅官方手册和社区论坛,你会越来越熟练。
