核心思路
安装手机端模板的核心思路是:

- 准备文件:下载或制作好手机端模板文件。
- 上传文件:将手机端模板文件上传到DedeCMS指定目录。
- 修改配置:修改DedeCMS的配置文件,告诉系统手机端模板的位置。
- 设置默认:设置网站默认的PC端模板,并启用手机端自适应功能。
- 测试验证:在手机上访问网站,确保模板生效且显示正常。
第一步:准备工作
-
下载手机端模板
- 你可以从网上搜索“DedeCMS手机端模板”,有很多免费或付费的资源。
- 确保你下载的模板版本与你的DedeCMS版本大致匹配(为DedeCMS 5.7设计的模板用在5.7上成功率更高)。
- 一个标准的手机端模板通常包含以下文件结构:
/m ├── index.php (首页文件) ├── list.php (列表页文件) ├── article_art.php (文章内容页文件) ├── search.php (搜索页文件) ├── images/ (模板图片文件夹) ├── style/ (模板样式文件夹,如css) └── ... (其他可能页面,如标签页等) - 有时模板会以压缩包(.zip)形式提供,你需要先解压。
-
备份网站
- 极其重要! 在进行任何文件修改或数据库操作之前,请务必备份你的整个网站目录和数据库,以防万一,可以快速恢复。
第二步:上传手机端模板文件
- 通过FTP工具连接:使用FileZilla等FTP工具,连接到你的网站服务器。
- 找到模板目录:登录后,找到DedeCMS的安装目录,模板通常存放在
/templets/目录下。 - 创建手机端模板文件夹:
- 在
/templets/目录下,创建一个新的文件夹,用来存放手机端模板,推荐命名为m或mobile,这里我们以m为例。 - 路径就是:
/你的网站根目录/templets/m/
- 在
- 上传模板文件:
- 将你下载并解压后的手机端模板文件夹内的所有文件和文件夹(如
index.php,style,images等)全部上传到刚创建的/templets/m/目录中。
- 将你下载并解压后的手机端模板文件夹内的所有文件和文件夹(如
操作示例:
假设你的网站根目录是 /home/wwwroot/yourdomain.com/,那么上传路径就是:
/home/wwwroot/yourdomain.com/templets/m/
第三步:修改DedeCMS配置文件
这是最关键的一步,目的是让DedeCMS识别并使用你上传的手机端模板。

-
找到配置文件:
- 登录你的网站后台(
/dede/目录)。 - 在左侧菜单中找到 【系统】 -> 【系统基本参数】。
- 登录你的网站后台(
-
修改模板默认目录:
- 在“系统基本参数”页面,点击右上角的 【核心设置】 选项卡。
- 找到 “站点默认模板目录” 这一项,将其值从默认的
default修改为你刚刚创建的手机端模板文件夹名称,即m。 - 点击【保存】,这一步的目的是让DedeCMS在生成静态页面时,默认使用
m目录下的模板。
-
(推荐)修改模板引擎路径:
- 仍在“核心设置”页面,找到 “模板引擎路径” 这一项。
- 它的值通常是
/include/dedetemplate.class.php,请确认这个路径是否正确,通常无需修改,但可以检查一下。
第四步:设置PC端模板并启用自适应
为了让PC用户依然使用原来的PC模板,同时让手机用户自动跳转到手机模板,需要进行如下设置。
-
设置PC首页模板:
- 在后台左侧菜单找到 【主页】 -> 【主页管理】。
- 点击 【默认主页设置】。
- 在“主页模板”选项中,选择你的PC端首页模板(通常是
default/index.htm)。 - 在“列表页模板”和“内容页模板”中也选择对应的PC端模板。
- 点击【保存】,这一步确保了PC端生成页面时使用正确的PC模板。
-
启用手机端自适应(跳转):
- 在后台左侧菜单找到 【系统】 -> 【手机门户设置】。
- 重要提示:如果你的DedeCMS版本较老(如5.7),这个功能可能不叫“手机门户设置”,可能需要手动修改代码,我们先按新版操作。
- 在“手机门户设置”页面,你可以设置手机端的首页、列表页等模板路径(它们会自动指向
/templets/m/下的文件)。 - 关键选项:通常会有一个 “手机端访问跳转开关” 或类似的选项,请务必开启它。
- 保存设置。
如果你的后台没有【手机门户设置】怎么办?(旧版DedeCMS 5.7通用方法)
如果找不到这个选项,你需要手动修改代码来实现手机跳转:
-
打开
/include/arc.archives.class.php文件。 -
查找代码:在文件中搜索
ismobile或DetectsMobile,通常在MakeHtml函数附近。 -
修改代码:找到类似下面的代码块(可能略有不同):
// 检测是否为手机访问 if ($this->IsMobile()) { // 如果是手机,则使用手机端模板 $this->SetTemplate($this->typepage); } else { // 如果是PC,则使用PC端模板 $this->SetTemplate($this->typepage); }你需要确保
$this->IsMobile()这个判断逻辑存在并且正确,如果不存在,你需要添加它,一个常见的实现方式是:在
arc.archives.class.php文件的开头,或者在一个公共函数文件中(如/include/common.func.php)添加以下函数:// 检测是否为手机访问 function IsMobile() { if (empty($_SERVER['HTTP_USER_AGENT'])) { return false; } $user_agent = strtolower($_SERVER['HTTP_USER_AGENT']); $mobile_agents = array( 'iphone', 'android', 'ipod', 'ipad', 'windows phone', 'mobile', 'blackberry', 'opera mini', 'opera mobi', 'fennec', 'htc_', 'htc-', 'lg-', 'lg/', 'sonyericsson', 'nokia', 'samsung', 'mobile safari' ); foreach ($mobile_agents as $device) { if (strpos($user_agent, $device) !== false) { return true; } } return false; }然后在生成文章页面的逻辑中,使用这个函数来判断并选择模板,这通常需要一定的PHP基础,如果不确定,建议使用支持手机跳转的DedeCMS版本或插件。
第五步:测试验证
-
清除缓存:
- 在后台,进入 【系统】 -> 【一键更新网站】 -> 更新缓存,点击执行,清除所有旧的缓存文件。
-
生成栏目和文档:
- 为了确保所有页面都应用了新模板,建议重新生成一下首页、栏目页和文章页。
- 进入 【主页】 -> 【一键更新网站】,选择“更新主页”、“更新栏目页”、“更新文档页”,然后点击“开始更新”。
-
使用手机访问:
- 在你的手机浏览器中,输入你的网站域名。
- 方法一(推荐):使用浏览器的“开发者工具”模拟手机,在Chrome或Edge浏览器中,按
F12打开开发者工具,点击左上角的“设备切换”图标(一个手机加平板的图标),选择一个手机型号(如 iPhone X),然后刷新页面。 - 方法二:直接用手机访问,如果之前开启了跳转,手机访问时会自动切换到
/m/目录下的模板。 - 检查首页、文章列表页、文章内容页在手机上的显示效果,包括布局、图片、链接等是否正常。
常见问题与解决
-
问题1:手机访问后,页面样式乱了,图片很大。
- 原因:PC端的CSS样式没有针对手机屏幕做优化。
- 解决:你需要修改手机端模板里的
style.css文件,添加响应式CSS代码,img { max-width: 100%; height: auto; } /* 图片自适应宽度 */ body { font-size: 16px; } /* 手机端字体稍大 */或者,在手机端模板的
<head>部分加入viewport标签:<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
-
问题2:手机访问后,还是PC版的页面,没有跳转。
- 原因1:没有开启“手机端访问跳转开关”。
- 原因2:旧版DedeCMS没有相关功能,且没有手动添加跳转代码。
- 解决:检查后台是否有相关开关,如果没有,需要在模板文件(如
head.htm)的<head>标签内加入JS跳转代码:<script> function browserRedirect() { var sUserAgent = navigator.userAgent.toLowerCase(); var bIsIpad = sUserAgent.match(/ipad/i) == "ipad"; var bIsIphoneOs = sUserAgent.match(/iphone os/i) == "iphone os"; var bIsMidp = sUserAgent.match(/midp/i) == "midp"; var bIsUc7 = sUserAgent.match(/rv:1.2.3.4/i) == "rv:1.2.3.4"; var bIsUc = sUserAgent.match(/ucweb/i) == "ucweb"; var bIsAndroid = sUserAgent.match(/android/i) == "android"; var bIsCE = sUserAgent.match(/windows ce/i) == "windows ce"; var bIsWM = sUserAgent.match(/windows mobile/i) == "windows mobile"; if (bIsIpad || bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM) { window.location.href = "http://你的域名/m/"; // 替换成你的手机端首页 } } browserRedirect(); </script>
-
问题3:某个页面(如搜索页)没有手机版。
- 原因:你只上传了首页、列表页和内容页的模板,但搜索页等其他页面没有对应的手机模板。
- 解决:找到对应的手机端模板文件(如
search.php),上传到/templets/m/目录下,如果模板包里没有,你可能需要复制PC端的search.php到/templets/m/目录,并手动修改其代码,使其适应手机显示。
希望这份详细的指南能帮助你成功安装DedeCMS手机端模板!
