DedeCMS 手机网站模板安装教程
DedeCMS 的移动端模板安装通常有两种主流方式:

- 独立移动站(推荐):在主站域名下(如
www.yourdomain.com)创建一个子目录(如m/或mobile/),将移动端模板安装在此目录下,用户通过手机访问时,自动跳转到移动站,这种方式对 SEO 更友好,且主站和移动站内容可以独立管理。 - 响应式模板:使用一套能同时适配 PC 和手机屏幕的模板,这种方式安装相对简单,但功能定制不如独立移动站灵活。
本教程将重点讲解 第一种方式(独立移动站) 的安装,因为它是最经典和功能最强大的方案。
第一步:准备工作
在开始之前,请确保您已经准备好以下内容:
- 已安装的 Dedecms 主站:您的 PC 端网站已经可以正常运行。
- 购买或下载的移动端模板:通常是一个
.zip压缩包。 - FTP 工具:如 FileZilla,用于上传文件到您的服务器。
- 网站后台登录地址和用户名/密码。
- 您的域名和 FTP 服务器信息。
第二步:上传并解压移动端模板文件
-
下载并解压模板:
- 将您下载的移动端模板
.zip文件解压到您的电脑本地,您会看到一个文件夹,里面通常包含templets、include、images、plus等文件夹。
- 将您下载的移动端模板
-
通过 FTP 连接服务器:
(图片来源网络,侵删)打开您的 FTP 工具(如 FileZilla),输入您的 FTP 服务器地址、用户名、密码和端口,连接到您的服务器。
-
上传文件到指定目录:
- 关键步骤:在服务器上找到您 Dedecms 程序的根目录,这个目录里通常有
dede(后台文件夹)、data、include、templets等文件夹。 - 在根目录下创建一个新文件夹,命名为
m(或者mobile,这个名称可以自定义,但后续配置要保持一致)。 - 将您在本地解压好的移动端模板文件夹内的 所有文件和文件夹,上传到刚刚创建的
/m/目录下。 - 注意:是上传模板文件夹里的内容,而不是上传整个模板文件夹本身。
- 关键步骤:在服务器上找到您 Dedecms 程序的根目录,这个目录里通常有
上传完成后,您可以通过浏览器访问 http://您的域名/m/,如果能看到移动站的首页雏形,说明文件上传成功。
第三步:后台数据库配置
这是最核心的一步,目的是让移动站能够连接到主站的数据库,但使用自己独立的模板和配置。

-
登录 Dedecms 后台:
- 访问
http://您的域名/dede/,使用您的管理员账号登录。
- 访问
-
复制一份新的数据库配置文件:
- 在服务器根目录下,找到
/data/文件夹。 - 将
common.inc.php文件复制一份,并重命名为config_m.inc.php(这里的m必须与您在第二步创建的移动站目录名保持一致)。
- 在服务器根目录下,找到
-
编辑新的配置文件:
-
使用代码编辑器(如 Notepad++、VS Code)打开
/data/config_m.inc.php文件。 -
找到以下几行代码,根据您的实际情况进行修改:
// $cfg_dbhost = 'localhost'; // 数据库服务器 // $cfg_dbname = 'your_database_name'; // 数据库名 // $cfg_dbuser = 'your_database_user'; // 数据库用户名 // $cfg_dbpwd = 'your_database_password'; // 数据库密码 // $cfg_dbprefix = 'dede_'; // 数据库前缀,如果主站和移动站使用同一数据库,前缀不能相同!
-
数据库信息:
$cfg_dbhost,$cfg_dbname,$cfg_dbuser,$cfg_dbpwd这四项通常和主站的common.inc.php文件中的信息是 完全一样 的。 -
数据库前缀(极其重要!):
$cfg_dbprefix是最容易出错的地方。- 方案A(推荐):移动站和主站使用 同一个数据库,但不同的数据表前缀。
- 主站的前缀是
dede_,那么移动站的前缀可以改为dedem_或mobile_,这样能确保主站和移动站的数据完全隔离,互不影响。 - 操作:您需要在数据库中手动将移动站模板所需的表(如
dedem_archives,dedem_arctype等)的前缀也一并修改,通常模板提供者会说明需要哪些表。
- 主站的前缀是
- 方案B:移动站和主站使用 同一个数据库,且相同的数据表前缀。
这种方式会导致主站和移动站共享数据(如文章、分类),如果您希望内容同步,可以这样做,但请务必小心,任何一方的修改都会影响另一方。
- 方案A(推荐):移动站和主站使用 同一个数据库,但不同的数据表前缀。
-
保存并关闭
config_m.inc.php文件。
-
第四步:后台模板设置
-
进入模板管理:
- 在 Dedecms 后台,点击左侧菜单栏的 【系统】 -> 【系统基本参数】。
-
设置移动端模板目录:
- 在“站点设置”选项卡中,找到 “mobile templates” 或 “手机模板” 这一项。
- 在输入框中填入您创建的移动站目录名,即
m。 - 点击“保存”按钮。
-
设置默认移动端模板:
- 在后台左侧菜单栏,点击 【模板】 -> 【默认模板管理】。
- 在页面顶部,您会看到一个下拉菜单,选择 “手机版”。
- 在下方的列表中,将所有模板项(如主页、列表页、文章页等)的“默认模板风格”都设置为您的移动端模板文件夹名称(通常是模板包的名称,如
default或mb等,请参考您的模板说明)。 - 点击“保存”按钮。
第五步:设置手机访问跳转(可选但推荐)
为了让用户在用手机访问您的网站时,能自动跳转到移动站,您需要修改网站根目录下的一个文件。
-
打开
index.php文件:- 在 Dedecms 程序根目录下,找到
index.php文件。
- 在 Dedecms 程序根目录下,找到
-
添加跳转代码:
- 在
<?php和require_once(dirname(__FILE__)."/include/common.inc.php");这两行代码之间,添加以下 PHP 代码:// 手机端跳转 if(isset($_GET['mobile'])){ $mobile = $_GET['mobile']; }else{ $mobile = ''; } if($mobile!='no'){ if (isset($_SERVER['HTTP_USER_AGENT']) && !empty($_SERVER['HTTP_USER_AGENT'])){ $clientuseragent = strtolower($_SERVER['HTTP_USER_AGENT']); $clientuseragent_vs = array( 'iphone', 'ipod', 'ipad', 'android', 'blackberry', 'webos', 'windows phone', 'opera mini', 'opera mobi', 'opera tablet', 'kindle', 'silk', 'palm' ); foreach ($clientuseragent_vs as $value_vs) { $vs = strpos($clientuseragent, $value_vs); if ($vs !== false){ $location = str_replace('index.php', 'm/', 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']).'?mobile=no'; @header('Location: '.$location); exit; } } } } - 代码说明:这段代码会检测用户的 User-Agent,如果发现是手机设备,就会自动将页面重定向到
/m/目录。?mobile=no参数是用来防止跳转的,方便您在 PC 上测试移动站。
- 在
-
保存文件。
第六步:检查与测试
所有安装步骤都已完成,让我们进行最后的检查:
-
前台测试:
- 在手机浏览器或使用 Chrome 的“开发者工具”切换为手机模式,访问
http://您的域名。 - 页面应该会自动跳转到
http://您的域名/m/,并显示您安装的移动端模板。 - 检查移动站的各个栏目、文章页、搜索等功能是否正常。
- 在手机浏览器或使用 Chrome 的“开发者工具”切换为手机模式,访问
-
后台测试:
- 访问
http://您的域名/dede/登录后台。 - 在 -> 【所有频道】 中,发布一篇文章。
- 在文章编辑页面的“高级选项”或“自定义文档属性”里,确保“移动端栏目选择”等选项设置正确(如果模板支持)。
- 前往移动站查看,新文章是否已同步显示。
- 访问
常见问题与解决方案
-
Q1: 访问
/m/目录时,页面样式错乱或显示代码?- A1: 99% 的原因是 CSS 和 JS 文件的路径错误,移动端模板中的路径通常是相对于
/m/目录的,请检查模板文件中的 CSS (<link href="...">) 和 JS (<script src="...">) 路径是否正确,如果使用了绝对路径(如/m/templets/...),请确保正确。
- A1: 99% 的原因是 CSS 和 JS 文件的路径错误,移动端模板中的路径通常是相对于
-
Q2: 移动站无法连接数据库,提示错误?
- A2: 请仔细检查第三步中
/data/config_m.inc.php文件的数据库信息(主机名、数据库名、用户名、密码)是否与主站的common.inc.php完全一致,特别是数据库前缀是否设置正确。
- A2: 请仔细检查第三步中
-
Q3: 主站和移动站内容不显示或显示混乱?
- A3: 这通常是 数据库前缀 问题,请确保主站和移动站的数据表前缀不同,并且在
config_m.inc.php中设置正确,如果使用了相同前缀,它们会读取同一张表,可能导致数据结构冲突。
- A3: 这通常是 数据库前缀 问题,请确保主站和移动站的数据表前缀不同,并且在
-
Q4: 自动跳转功能不生效?
- A4: 检查根目录
index.php文件中是否成功添加了跳转代码,并且代码语法无误,确保您的服务器开启了 PHP 的curl或file_get_contents等函数,这些有时会影响跳转检测。
- A4: 检查根目录
