在如今无线互联网大潮的冲击下,越来越多的pc网站访问量下降,首当其冲的就是以pc网站为生的站长们,为了顺应无线互联网的要求,站长们很有必要为自己的pc网站扩展一套手机网站,更早的抓住手机用户的流量,使自己的网站更好的生存下去。看到这篇文章你应该感到庆幸,这儿会给你介绍一种最简单快速扩展手机网站的方法,对你正在运行的pc网站毫无影响。注意本文只针对利用dedecms系统建设的网站。

 

原dedecms系统优缺点分析:根据dedecms建站的思路,系统文件不变,改变网站模板就可以建一个新的网站,但是目前dedecms只支持一个数据库对应一套网站模板,系统自带的wap手机模板模式已经不忍直视,怎能满足目前的手机浏览时代。很多有追求的站长为了满足无线互联网大潮的需求,只能建两个网站,一个pc站一个手机站,并且同时维护两套数据相当麻烦,数据同步也很费劲。

dedecms扩展手机网站二次开发思路:这是我根据dedecms v5.7 扩展开发了手机网站系统,原pc网站系统不受影响,让一个数据库同时对应两套模板(一套pc模板和一套手机模板),当在pc端访问时,还是按原来的页面模板进行展示,但当在手机端访问时,通过判断访问设备为手机,系统自动调用手机模板进行展示,从而达到数据统一、模板分离的效果。无论客户用什么设备进行访问,网站总是以最合适、很友好的页面展示给顾客,从前增加网站的吸引力。

扩展手机网站原则: 在不改变原网站文件的前提下,仅增加(不删除、不改动)几个系统文件和一套手机模板(手机模板可以根据自己的需要随时更换)。

以下为在原pc网站的基础上扩展手机网站的步骤:

一、增加的系统文件列表:

1、plus 文件夹下面 增加 mlist.php  和  mview.php

(1)mlist.php 实现pc端和手机端“列表页面”的展现分离

(2)mview.php实现pc端和手机端“文章页面”的展现分离

2、include 文件夹下增加 arc.mobile.class.php 、arc.mobilelist.class.php 和 arc.mobilelistle.class.php

(1)arc.mobile.class.php 为手机模板增加的文档类

(2)arc.mobilelist.class.php 为手机模板增加的自由列表类

(3)arc.mobilelistle.class.php 为单表模型列表视图类

3、statics/js 文件下增加 mobileDetect.js ,该文件下的mobile_device_detect()方法用于检测是pc浏览还是手机浏览,如果是手机浏览会跳转到手机浏览模板路径。

二、增加手机模板文件方法:

1、templets/default 文件夹下放置手机模板文件,与pc端模板文件放在一个文件夹下,如果默认目录不是default请自行修改。

2、为了与同文件下的pc端模板文件区分,在手机模板文件名字前都加一个 ’m’ ;

3、为了保证pc端和手机端页面保持同步,主要的模板文件数量和命名要保证一一对应,但一些广告模板文件或其他的个性模板文件除外;

如:index.htm  对应 mindex.htm

list_article.htm 对应 mlist_article.htm

article_article.htm 对应 marticle_article.htm

head.htm 对应 mhead.htm

footer.htm 对应mfooter.htm 等等。

4、当然不能少了手机模板的样式、脚本和图片所在的文件夹 mstatics,可根据手机模板和自己网站的情况自行修改该文件的名字。

三、对“pc端模板”增加检测脚本

1、在 index.htm 文件中的<head></head>标签之间加入以下脚本文件

<!--引入手机浏览转换js开始-->

<script language="javascript" type="text/javascript" src="/statics/js/mobileDetect.js"></script>

<script>

mobile_device_detect("/mindex.html”);//这里设定的手机端的首页位置为 /mindex,html

</script>

<!--引入手机浏览转换js结束-->

2、在 list_article.htm文件(包括其他以list_开头的模板文件)中的<head></head>标签之间加入以下脚本文件

<!--引入手机浏览转换js开始-->

<script language="javascript" type="text/javascript" src="/statics/js/mobileDetect.js"></script>

<script>

mobile_device_detect("/plus/mlist.php?tid={dede:field.typeid/}");//这里设定的手机端的列表页面路径, tid动态                                                                                          //获取,保证了pc端和手机端列表的同步性。

</script>

<!--引入手机浏览转换js结束-->

3、在 article_article.htm文件(包括其他以article_开头的模板文件)中的<head></head>标签之间加入以下脚本文件

<!--引入手机浏览转换js开始-->

<script language="javascript" type="text/javascript" src="/statics/js/mobileDetect.js"></script>

<script>

mobile_device_detect("/plus/mview.php?aid={dede:field.id/}"); //这里设定的手机端的文章页面路径,aid动态获取,保证了pc端和手机端文章的同步性。

</script>

<!--引入手机浏览转换js结束-->

四、网站更新的方法

1、网站列表和文章的生成方法:

看了第三个步骤,就能发现,手机端除了首页需要生成之外,列表和文章都是动态浏览的,无需更新生成;

所以每次更新网站栏目和文档时 就按原来更新pc端网站的方法即可。

2、网站首页生成方法:按先生成手机端首页再生成pc端首页的顺序生成;

(1)生成手机端首页:dedecms后台 生成—更新主页HTML—选择主页模板改为:default/mindex.htm;主页位置改为:../mindex.html;首页模式选 ‘生成静态’ — 更新主页HTML    完成。

(2)生成pc端首页:dedecms后台 生成—更新主页HTML—选择主页模板改为:default/index.htm;主页位置改为:../index.html;首页模式选 ‘生成静态’ — 更新主页HTML    完成。

经过以上四个步骤,所有的工作就完了,现在你就可以分别用pc和手机测试一下网站了。

演示网站地址: www.jieyan99.com  (请分别用电脑和手机访问该网址 进行测试 或用手机扫描二维码访问,该演示网址可能被360误报,请放心访问)

网站首页

手机站首页

手机列表页头部

列表页显示菜单

手机列表页尾部

手机文章页头部

手机文章页尾部

dedecms网站扩展手机网站的系统文件请联系 qq :512075046 获取 (包指导安装),非诚勿扰!

dedecms网站扩展手机网站—共用数据库真正做到电脑手机同步访问,原pc站无需改动,对原pc站无任何影响的更多相关文章

  1. Bugku-CTF分析篇-手机热点(有一天皓宝宝没了流量只好手机来共享,顺便又从手机发了点小秘密到电脑,你能找到它吗?)

    手机热点 httppan.baidu.coms1cwwdVC 有一天皓宝宝没了流量只好手机来共享,顺便又从手机发了点小秘密到电脑,你能找到它吗? 题目来源:第七季极客大挑战  

  2. DEDEcms手机网站添加详情内页上一页/下一页的翻页功能

    修改文件include/arc.archives.class.php文件. 1.搜索 function GetPreNext($gtype='') 2.将这个函数的所有内容替换为 function G ...

  3. 手机网站支付如何接入支付宝简易版支付功能PHP版

    接入支付宝准备工作:(关于账号可以是个体商户也可以是企业账号但必须有营业执照) 1.登录蚂蚁金服开放平台  2.创建应用,应用分类网页应用和移动应用.应用提交审核审核通过后得到Appid才能调用相应的 ...

  4. Laravel5.5 支付宝手机网站支付的教程

    https://segmentfault.com/a/1190000015559571 这篇文章主要介绍了Laravel5.5 支付宝手机网站支付的教程,小编觉得挺不错的,现在分享给大家,也给大家做个 ...

  5. 帝国cms制作手机网站

    1.操作前,我们需要先对网站数据库进行备份. 接下来我们添加手机站的模板组.点击"模板", 选择"模板组管理"中的"导入/导出模板组",然后 ...

  6. Asp.Net支付宝手机网站支付接口API之C#版

    一.准备工作 1.使用企业支付宝签约手机网站支付 2.下载支付宝官方demo 文档地址:https://doc.open.alipay.com/doc2/detail?treeId=60&ar ...

  7. 在laravel中使用支付宝手机网站支付 和 支付宝退款

    1.在蚂蚁金服开放平台中申请对应的应用,并根据提示进行签约 2.给对应的应用信息 生成私钥和公钥(私钥会保存在本地,公钥会放在对应的应用信息中) 3.下载手机网站支付 对应的php sdk 4.将sd ...

  8. Bootstrap手机网站开发案例

    Bootstrap手机网站开发案例 一.总结 一句话总结:Bootstrap手机网站开发注意事项(3点):a.引入viewpoint声明,b.通过屏幕宽动态控制元素显隐 c.图片添加自适应 1.Boo ...

  9. 支付宝PC即时到账和手机网站支付同步

    前几个月做了一个旅游网站,有PC站和手机站,涉及支付宝支付功能. 要求:PC站下的单,用户用手机登录也能支付;同理,手机站下的单,PC端登录也能支付. 附支付宝开放平台网址:即时到账 ,手机网站支付. ...

随机推荐

  1. Opencv常用函数讲解

    1.approxPolyDP(Mat(ps), poly, 5, true);//根据点集,拟合出多边形 2.fillConvexPoly(mask, Mat(ps), Scalar(255));根据 ...

  2. JDBC常用套路

    1.连接数据库.使用查询功能 //1.获取数据库连接 Connection con=JDBCTools.getConnection(); String sql="select * from ...

  3. Ubuntu 安装 phpredis扩展

    官网 https://github.com/phpredis/phpredis 下载->然后解压->上传服务器 /etc/phpredis 进行 cd /etc/phpredisphpiz ...

  4. Photoshop入门教程(六):通道

    学习心得:当大部分人听到通道.心里可能会有一种很害怕的感觉,因为“通道”并不像“图层”这样易于理解,望而生畏.”通道“的本质其实是存储图片的信息,把一张图片比作一个为网站,那么通道就是网站的后台,存储 ...

  5. JavaScript中使用ActiveXObject操作本地文件夹的方法

    转载地址    http://www.jb51.net/article/48538.htm 在Windows平台上, js可以调用很多Windows提供的ActivexObject,本文就使用js来实 ...

  6. 1.5 GO json转Map

    使用GO将show slave status查询返回的json串转为Map类型 package main import ( "encoding/json" "fmt&qu ...

  7. my09_mysql指定时间点恢复之binlog start-position

    场景描述 ********************************************* 在远程服务器做的全备并已经恢复,同时使用binlog server备份binlog 之后,删除了库 ...

  8. js网页瀑布流布局

    瀑布流布局思路: 1.css样式,图片的父级div样式设置为定位或者浮动 2.找出图片父级元素(box)和最外元素(main):获取box的宽度和main的宽,然后计算main容器一行能容纳多少个bo ...

  9. Mysql 查看表数据以及索引大小

    如果想查看 Mysql 数据库的总的数据量或者某个表的数据或者索引大小,可以使用系统库 information_schema 来查询,这个系统库中有一个 TABLES 表,这个表是用来记录数据库中表的 ...

  10. JS中==、===和Object.is()的区别

    JS中==.===和Object.is()的区别 首先,先粗略了解一下这三个玩意儿: ==:等同,比较运算符,两边值类型不同的时候,先进行类型转换,再比较: ===:恒等,严格比较运算符,不做类型转换 ...