DedeCMS移动端访问pc网址自动跳转m网址
网站建设 2022-07-27 09:12www.1681989.com免费网站
DedeCMS移动适配成功后,有一个问题一直烦扰,虽然首页可以用百度官方的跳转方法实现跳转,手机端访问网站的内页pc网址时,不会自主跳转到相对应的移动站点,查询了很多方法 […]
DedeCMS移动适配成功后,有一个问题一直烦扰,虽然首页可以用百度官方的跳转方法实现跳转,手机端访问网站的内页pc网址时,不会自主跳转到相对应的移动站点,查询了很多方法,只有JS跳转可以完美实现,今天就把教程写出来,希望可以帮到大家(这里不考虑移动端搜索引擎优化,需要通过JS判断是否移动端,然后确定是否跳转到指定页面就行了)
1、添加js文件,代码如下,名字随意命(余斗的为m.js)
//判断是否移动端,如果是则跳转到指定的URL地址
function browserRedirect(url) {
//只读的字符串,声明了浏览器用于 HTTP 请求的用户代理头的值
var sUserAgent = navigator.userAgent.toLowerCase();
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(/wdows ce/i) == "wdows ce";
var bIsWM = sUserAgent.match(/wdows mobile/i) == "wdows mobile";
if (bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM) {
wdow.location.replace(url);
}
}
function browserRedirect(url) {
//只读的字符串,声明了浏览器用于 HTTP 请求的用户代理头的值
var sUserAgent = navigator.userAgent.toLowerCase();
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(/wdows ce/i) == "wdows ce";
var bIsWM = sUserAgent.match(/wdows mobile/i) == "wdows mobile";
if (bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM) {
wdow.location.replace(url);
}
}
2、在需要做跳转的页面引用JS,调用方法(这里根据自己的js所放路径和名字自行修改
<script src="/js/m.js"></script>
<script type="text/javascript">browserRedirect("http://m.dedesos./yudoubiji");</script>
<script type="text/javascript">browserRedirect("http://m.dedesos./yudoubiji");</script>
3、因为DedeCMS的内容页和栏目页都是模版控制生成,不可能在每个生成的页面都加上这段代码,这里需要变通一下,在模版中加一次即可,主要分为栏目/列表页和文章页加代码,以博客为例,移动站点的域名为m.yudouyudou.,pc对应的文章页和栏目页后缀相同
文章页调用代码
<script src="/js/m.js"></script>
<script type="text/javascript">browserRedirect("http://m.dedesos.{dede:field name='arcurl'/}");</script>
<script type="text/javascript">browserRedirect("http://m.dedesos.{dede:field name='arcurl'/}");</script>
栏目/列表页调用的代码
<script src="/js/m.js"></script>
<script type="text/javascript">browserRedirect("http://m.dedesos.{dede:type typeid='0′ row=1}[field:typelk/]{/dede:type}");</script>
<script type="text/javascript">browserRedirect("http://m.dedesos.{dede:type typeid='0′ row=1}[field:typelk/]{/dede:type}");</script>
4、加上一个首页的调用代码
<script src="/js/m.js"></script>
<script type="text/javascript">browserRedirect("http://m.dedesos.");</script>
<script type="text/javascript">browserRedirect("http://m.dedesos.");</script>
还有一种方法是利用百度官方的方式实现跳转,思路是一样的,同样需要加一个js文件,代码如下
function uaredirect(f){try{if(document.getElementById("bdmark")!=null){return}var b=false;if(arguments[1]){var e=wdow.location.host;var a=wdow.location.href;if(isSubdoma(arguments[1],e)==1){f=f+"/#m/"+a;b=true}else{if(isSubdoma(arguments[1],e)==2){f=f+"/#m/"+a;b=true}else{f=a;b=false}}}else{b=true}if(b){var c=wdow.location.hash;if(!c.match("fromapp")){if((navigator.userAgent.match(/(iPhone|iPod|Android|ios)/i))){location.replace(f)}}}}catch(d){}}function isSubdoma(c,d){this.getdoma=function(f){var e=f.dexOf("://");if(e>0){var h=f.substr(e+3)}else{var h=f}var g=/^\./;if(g.test(h)){h=h.substr(4)}return h};if(c==d){return 1}else{var c=this.getdoma(c);var b=this.getdoma(d);if(c==b){return 1}else{c=c.replace(".","\\.");var a=new RegExp("\\."+c+"$");if(b.match(a)){return 2}else{return 0}}}};
调用代码为
<script src="/js/uaredirect.js" type="text/javascript"></script>
<script type="text/javascript">uaredirect("http://m.dedesos.","http://.dedesos.");</script>
<script type="text/javascript">uaredirect("http://m.dedesos.","http://.dedesos.");</script>
然后更新全站,再用移动端访问pc网址就可以完美实现跳转。同理,我们要是从移动站访问pc站改怎么做呢?请点击。
上一篇:
手机端访问PC端页面如何正确跳转
下一篇:DedeCMS解除禁止删除系统模型的方法
网站设计
- 静宁会SEO的网站建设公司:全面提升您的网络影
- 提升在线业务的关键:选择最佳的丽水网站建设
- 浙江网站优化发展潜力如何
- 井研专业的网站建设公司:打造您的在线品牌
- 灵山SEO网站建设公司:提升您的在线业务表现
- 蒙城网站建设优化公司:提升您网站表现的理想
- 阳谷企业网站优化:提升线上业务力的关键
- 樟树专业的网站建设公司:打造您在线业务的坚
- 通河百度SEO排名的策略与技巧
- 重庆百度快照排名如何进行精准的客户引流
- 重庆百度快照排名
- 常宁便宜的建站公司:助您轻松打造在线业务
- 巫溪百度网站优化:提升网站曝光率与流量的关
- 湖北整站优化怎么做才能放大客户需求
- 闸北网站建设多少钱?全面解析与预算规划
- 辽宁企业网站优化怎么做电话营销