dedecms网站扩展手机网站—共用数据库真正做到电脑手机同步访问,原pc站无需改动,对原pc站无任何影响
在如今无线互联网大潮的冲击下,越来越多的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站无任何影响的更多相关文章
- Bugku-CTF分析篇-手机热点(有一天皓宝宝没了流量只好手机来共享,顺便又从手机发了点小秘密到电脑,你能找到它吗?)
手机热点 httppan.baidu.coms1cwwdVC 有一天皓宝宝没了流量只好手机来共享,顺便又从手机发了点小秘密到电脑,你能找到它吗? 题目来源:第七季极客大挑战
- DEDEcms手机网站添加详情内页上一页/下一页的翻页功能
修改文件include/arc.archives.class.php文件. 1.搜索 function GetPreNext($gtype='') 2.将这个函数的所有内容替换为 function G ...
- 手机网站支付如何接入支付宝简易版支付功能PHP版
接入支付宝准备工作:(关于账号可以是个体商户也可以是企业账号但必须有营业执照) 1.登录蚂蚁金服开放平台 2.创建应用,应用分类网页应用和移动应用.应用提交审核审核通过后得到Appid才能调用相应的 ...
- Laravel5.5 支付宝手机网站支付的教程
https://segmentfault.com/a/1190000015559571 这篇文章主要介绍了Laravel5.5 支付宝手机网站支付的教程,小编觉得挺不错的,现在分享给大家,也给大家做个 ...
- 帝国cms制作手机网站
1.操作前,我们需要先对网站数据库进行备份. 接下来我们添加手机站的模板组.点击"模板", 选择"模板组管理"中的"导入/导出模板组",然后 ...
- Asp.Net支付宝手机网站支付接口API之C#版
一.准备工作 1.使用企业支付宝签约手机网站支付 2.下载支付宝官方demo 文档地址:https://doc.open.alipay.com/doc2/detail?treeId=60&ar ...
- 在laravel中使用支付宝手机网站支付 和 支付宝退款
1.在蚂蚁金服开放平台中申请对应的应用,并根据提示进行签约 2.给对应的应用信息 生成私钥和公钥(私钥会保存在本地,公钥会放在对应的应用信息中) 3.下载手机网站支付 对应的php sdk 4.将sd ...
- Bootstrap手机网站开发案例
Bootstrap手机网站开发案例 一.总结 一句话总结:Bootstrap手机网站开发注意事项(3点):a.引入viewpoint声明,b.通过屏幕宽动态控制元素显隐 c.图片添加自适应 1.Boo ...
- 支付宝PC即时到账和手机网站支付同步
前几个月做了一个旅游网站,有PC站和手机站,涉及支付宝支付功能. 要求:PC站下的单,用户用手机登录也能支付;同理,手机站下的单,PC端登录也能支付. 附支付宝开放平台网址:即时到账 ,手机网站支付. ...
随机推荐
- android:id 中区别。。
一. android:id="@android:id/tabhost" 是调用系统内部的ID 和代码中 mTabContent = (FrameLayout) findView ...
- php设计模式总结2
策略模式: 定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户. 封装:把行为用接口封装起来,我们可以把那些经常变化的部分,从当前的类中单独取出来,用接口进行单 ...
- 在Pycharm上编写WordCount程序
本篇博客将给大家介绍怎么在PyCharm上编写运行WordCount程序. 第一步 下载安装PyCharm 下载Pycharm PyCharm的下载地址(Linux版本).下载完成后你将得到一个名叫: ...
- centos7-网络与防火墙常用命令
1.网络配置 vi /etc/sysconfig/network-scripts/ifcfg-ens33 BOOTPROTO="static" IPADDR=192.168.163 ...
- NMS_非极大值抑制(转)
NMS(non maximum suppression),中文名非极大值抑制,在很多计算机视觉任务中都有广泛应用,如:边缘检测.目标检测等. 这里主要以人脸检测中的应用为例,来说明NMS,并给出Mat ...
- 苏D_8M150
20161226 麦德龙 西边 弄堂 前车 转弯 刹车,我 刹车,下雨路滑,滑到.没撞到前车.车型号没看...只记了车牌... 右手撑了一下,肩膀估计是撑伤了,举起来 比较疼... 不知 该如何处理, ...
- js和jq中常见的各种位置距离之offset和offset()的区别(三)
offsetLeft:元素的边框的外边缘距离与已定位的父容器(offsetparent)的左边距离(不包括元素的边框和父容器的边框). offset().left:返回的是相对于当前文档的坐标,使用o ...
- NIOGoodDemo
Java NIO是在jdk1.4开始使用的,它既可以说成“新I/O”,也可以说成非阻塞式I/O.下面是java NIO的工作原理: 1. 由一个专门的线程来处理所有的 IO 事件,并负责分发. 2. ...
- 数据库mysql--基础命令
客户端 一.登录和退出 1.登录 mysql -h server-ip -u usename -p 回车,然后会提示输入密码 2.退出:"quit;" | "exit;& ...
- 转:自定义控件三部曲之动画篇——alpha、scale、translate、rotate、set的xml属性及用法
第一篇: 一.概述 Android的animation由四种类型组成:alpha.scale.translate.rotate,对应android官方文档地址:<Animation Resour ...