核心概念:织梦手机站同步原理
在开始之前,你必须理解织梦手机站同步的核心原理:
- 共用数据库:PC站和手机站使用同一个数据库,通过不同的数据表前缀来区分内容,PC站的文章表是
dede_archives,手机站的可能是dede_archives_m。 - 共用后台:PC站和手机站的后台是同一个,你在PC后台发布的文章,通过“一键生成”功能,会同时将文章内容写入PC的数据表和手机站的数据表。
- 共用模型和栏目:后台的“内容模型管理”和“栏目管理”是共享的,但手机站需要单独配置“手机栏目”和“手机内容模型”。
- 独立的模板和目录:手机站有自己独立的模板文件(存放在
/templets/default/mobile/目录下)和独立的网站目录(如/m/)。
后台是“大脑”,数据库是“仓库”,模板是“外貌”,大脑发布内容,内容存入仓库,并按照手机模板的样子生成页面。
准备工作
- 服务器环境:确保你的服务器支持伪静态(如 Apache 的
.htaccess或 Nginx 的rewrite规则)。 - 织梦程序:确保你已经成功安装了织梦CMS的PC站。
- 手机站程序包:你需要从织梦官方或可靠的来源获取手机站程序包,这个包里包含:
/m/目录(手机站网站根目录)/include/目录下的部分文件(如dedemobile.class.php)- 修改好的
/templets/default/目录下的手机模板文件。
- FTP/SFTP工具:用于上传文件到服务器。
- 数据库管理工具:如 phpMyAdmin,用于备份数据库和检查数据表。
详细步骤教程
第一步:上传手机站文件
- 下载手机站程序包:假设你已经下载了,解压后得到一个
m文件夹。 - 通过FTP上传:将解压后的
m文件夹内的所有文件,上传到你网站根目录下,如果你的网站根目录是/wwwroot/,那么上传后,你的手机站访问地址就是http://你的域名/m/。
第二步:修改PC站配置
这一步是连接PC站和手机站的关键。
-
打开配置文件:用FTP工具连接服务器,找到并打开
/include/config_base.php文件。 -
添加手机站配置:在文件中找到
$cfg_mobileurl = '';这一行,将其修改为你的手机站访问地址。// 修改前 // $cfg_mobileurl = ''; // 修改后 $cfg_mobileurl = 'http://你的域名/m/';
提示:
http://你的域名/请替换成你自己的实际域名,并确保以
第三步:创建手机站数据表
- 备份数据库:在进行任何数据库操作前,务必备份你的数据库!
- 导入数据表:手机站程序包里通常包含一个名为
dede_sql.sql或类似名称的SQL文件,使用 phpMyAdmin 等工具,将这个SQL文件导入到你的数据库中。- 导入后,你的数据库里会出现一系列以
dede_m_开头的数据表,dede_m_archives(手机文章表)、dede_m_arctype(手机栏目表)等。
- 导入后,你的数据库里会出现一系列以
第四步:修改手机站配置
- 打开手机站配置文件:找到并打开
/m/config.cache.inc.php文件。 - 修改数据库连接信息:确保这里的数据库信息(数据库名、用户名、密码)与你的PC站
/data/common.inc.php文件中的信息完全一致。// /m/config.cache.inc.php 文件内容 <?php $cfg_dbhost = 'localhost'; // 数据库主机 $cfg_dbname = '你的数据库名'; // 数据库名 $cfg_dbuser = '数据库用户名'; // 数据库用户名 $cfg_dbpwd = '数据库密码'; // 数据库密码 $cfg_dbprefix = 'dede_m_'; // 手机站数据表前缀 // ... 其他配置 ... ?>
注意:
$cfg_dbprefix必须是你在第三步导入的手机站数据表的前缀(如dede_m_)。
第五步:后台设置(最关键的一步)
现在登录你的织梦后台(/dedete/)。
-
设置“手机版”
- 进入 【系统】->【系统基本参数】->【核心设置】。
- 找到 “是否开启手机站” 的选项,选择 “是”。
- 保存。
-
创建“手机栏目”
- 进入 【栏目管理】。
- 你会看到顶部多了一个 【手机栏目】 的选项卡,点击它。
- 你可以像创建PC栏目一样,为手机站创建栏目,你可以将PC栏目“同步”为手机栏目,也可以新建,每个手机栏目都需要指定一个对应的PC栏目,以便在发布内容时进行同步。
-
创建“手机内容模型”
- 进入 【核心】->【内容模型管理】。
- 你会看到顶部多了一个 【手机版】 的选项卡,点击它。
- 你需要为手机站创建内容模型,最简单的方式是复制一个PC的模型(如“文章模型”),然后稍作修改。
- 操作步骤: a. 点击 [增加手机版模型]。 b. 模型名称可以命名为“手机文章”,字段列表可以从PC模型中复制过来。 c. 保存后,这个新的手机模型就可以在“手机栏目”中选择了。
-
发布文章并同步
- 进入 发布】->【添加文章】。
- 在发布文章的界面,你会看到文章内容下方有 “选择手机版专题” 和 “是否生成手机版” 的选项。
- 勾选“是否生成手机版”。
- 选择对应的手机栏目(如果你在第三步创建了的话)。
- 填写文章内容,然后点击 “发布” 或 “保存”。
- 发布成功后,系统会自动将文章存入PC数据表和手机数据表,并生成PC和手机两端的静态页面。
第六步:设置伪静态
为了让手机站的URL更美观,需要设置伪静态。
-
Nginx 服务器:
- 打开你的Nginx配置文件(通常在
/usr/local/nginx/conf/nginx.conf或站点配置文件中)。 - 在PC站的
server块中,添加以下rewrite规则:
# 在PC站的 server { ... } 块内添加 location ~* ^/m { # 将 /m 目录下的请求转发给手机站处理 # 手机站程序通常自带了处理逻辑,这里主要是确保能正确访问 try_files $uri $uri/ /m/index.php?$args; }- 确保你的PC站和手机站都启用了伪静态,通常织梦会提供两个伪静态规则文件:
/m/rewrite_mobile.conf和/rewrite.conf,你需要将它们的内容分别应用到对应的server块中。
- 打开你的Nginx配置文件(通常在
-
Apache 服务器:
- 手机站程序包里通常会提供一个
.htaccess文件,你只需要将它上传到/m/目录下即可。 - 确保PC站的根目录下也有
.htaccess文件,并且规则正确。
- 手机站程序包里通常会提供一个
设置完伪静态后,重启你的Web服务器(Nginx/Apache)。
常见问题与解决方法
-
问题:后台设置“开启手机站”后,前台访问
/m/显示404或空白页。- 原因:伪静态未配置正确,或
/m/目录未上传完整文件。 - 解决:检查伪静态规则,确保
/m/目录下所有文件都已正确上传。
- 原因:伪静态未配置正确,或
-
问题:发布文章时,勾选“生成手机版”后,手机站没有内容。
- 原因:
- 未创建“手机栏目”或未选择。
- 手机站数据表前缀在
/m/config.cache.inc.php中配置错误。 - 数据库中缺少手机站数据表(未导入
dede_sql.sql)。
- 解决:对照第五步的设置,逐一检查。
- 原因:
-
问题:手机站页面样式错乱。
- 原因:模板文件路径错误或模板文件缺失。
- 解决:检查
/templets/default/目录下是否有手机专用的模板文件(如index_default.htm,article_article.htm等),并确保后台的“系统基本参数”中“模板默认目录”设置正确。
-
问题:同步后,手机站的内容和PC站一模一样,没有针对手机进行优化。
- 原因:这是正常的,因为数据是同步的,你需要的是模板的优化。
- 解决:修改
/templets/default/mobile/目录下的模板文件,将大图换成小图,使用更简洁的布局,字体调大等,你可以参考一些成熟的手机站模板进行修改。
织梦手机站同步的核心在于后台的正确配置和数据库的关联,只要按照以下流程操作,基本都能成功:
- 传文件:上传
/m/目录。 - 改配置:修改PC站的
config_base.php和手机站的config.cache.inc.php。 - 建表:导入手机站数据表SQL文件。
- 设后台:在后台开启手机站、创建手机栏目和模型。
- :发布文章时勾选“生成手机版”。
- 配伪静态:让手机站URL正常化。
完成以上步骤后,你的织梦PC站和手机站就能完美同步了,后续的工作就是针对手机用户优化模板,提升移动端体验。
