ecshop其他页面判断是智能手机访问也跳转到ECTouch对应手机版页面(转)
ecshop 其他页面(商品详情页、商品分类页、团购页、优惠活动页、积分商城) 判断如果是智能手机访问跳转到ECTouch1.0手机版对应页面 方法
首先在ecshop 根目录下 includes/lib_main.php 添加一个函数function pc_to_mobile()
/**
* ecshop 实现其他页面(商品详情页、商品分类页、团购页、优惠活动页、积分商城)
* 判断如果是智能手机访问的话 跳转到ECTouch1.0手机版对应页面 方法
*
* @access public
*/
function pc_to_mobile()
{
//判断是否是手机访问
$is_mobile = false;
$ua = strtolower($_SERVER['HTTP_USER_AGENT']);
$uachar = "/(nokia|sony|ericsson|mot|samsung|sgh|lg|philips|panasonic|alcatel|lenovo|cldc|midp|mobile)/i";
if(($ua == '' || preg_match($uachar, $ua))&& !strpos(strtolower($_SERVER['REQUEST_URI']),'wap'))
{
$is_mobile = true;
}
/* 判断是否重写,取得文件名 */
$cur_url = basename(PHP_SELF);
if (intval($GLOBALS['_CFG']['rewrite'])){
$filename = strpos($cur_url,'-') ? substr($cur_url, 0, strpos($cur_url,'-')) : substr($cur_url, 0, -4);
}else{
$filename = substr($cur_url, 0, -4);
}
if($is_mobile){
/*
* 如果你绑定了手机版域名 http://www.abc.com/mobile 为 http://m.abc.com
* 那么 $mobile_url = http://m.abc.com
*/
$mobile_url = $GLOBALS['ecs']->url().'mobile';
/* 根据文件名分别处理中间的部分 */
if ($filename != 'index')
{
/* 处理有分类的 */
if (in_array($filename, array('category', 'goods', 'brand')))
{
/* 商品分类或商品 */
if ('category' == $filename || 'goods' == $filename || 'brand' == $filename)
{
$Loaction = $mobile_url .'/?c='.$filename.'&a=index&'.$_SERVER["QUERY_STRING"];
}
}
/* 处理无分类的 */
else
{
/* 团购 */
if ('group_buy' == $filename)
{
if(!empty($_GET['id'])){
$Loaction = $mobile_url .'/?c=groupbuy&a=info&id='.$_GET['id'];
}else{
$Loaction = $mobile_url .'/?c=groupbuy';
}
}
/* 拍卖 */
elseif ('auction' == $filename)
{
if(!empty($_GET['id'])){
$Loaction = $mobile_url .'/?c=auction&a=info&id='.$_GET['id'];
}else{
$Loaction = $mobile_url .'/?c=auction';
}
}
/* 夺宝 */
elseif ('snatch' == $filename)
{
if(!empty($_GET['id'])){
$Loaction = $mobile_url .'/?c=snatch&a=info&id='.$_GET['id'];
}else{
$Loaction = $mobile_url .'/?c=snatch';
}
}
/* 批发 */
elseif ('wholesale' == $filename)
{
if(!empty($_GET['id'])){
$Loaction = $mobile_url .'/?c=wholesale&a=info&id='.$_GET['id'];
}else{
$Loaction = $mobile_url .'/?c=wholesale';
}
}
/* 积分兑换 */
elseif ('exchange' == $filename)
{
if(!empty($_GET['id'])){
$Loaction = $mobile_url .'/?c=exchange&a=exchange_goods&gid='.$_GET['id'];
}else{
$Loaction = $mobile_url .'/?c=exchange';
}
}
/* 优惠活动 */
elseif ('activity' == $filename)
{
$Loaction = $mobile_url .'/?c=activity';
}
}
/* ecshop跳转到手机对应页面 */
if (!empty($Loaction)){
ecs_header("Location: $Loaction");
exit;
}
}
}
}
pc_to_mobile();
以上修改 适用于网站程序是ecshop2.7.3版本与手机版ECTouch1.0且没有经过二次开发。
http://help.ecmoban.com/article-2083.html
ecshop其他页面判断是智能手机访问也跳转到ECTouch对应手机版页面(转)的更多相关文章
- ecshop PC版本智能跳转到对应手机版页面
以下适用于PC跳转到ectouch手机版的写法.其他手机端的方法类似. 修改文件 includes/lib_main.php 增加以下 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ...
- 手机访问pc版网站自动跳转为手机版页面
1.PC版首页</head>标签前加上以下脚本 <script src="/tools/browser_redirect.ashx"></script ...
- JavaScript 判断手机端访问并跳转 redirect mobile
假如你的手机端网站在 /m 目录下 (function(a,b){if(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer| ...
- uc浏览器手机版,页面图片不显示
uc浏览器手机版,有时候上面的轮播广告看不到 原因:uc浏览器会拦截所有带ad的标签 例如: <div id="adDiv"> <img src="/r ...
- apache通过.htaccess(rewrite)判断手机电脑跳转-手机用户重定向到手机版
自动判断.重定向的办法也有几种: 使用网站构建的程序(例如PHP)来判断.重定向:使用服务器上的Web服务(例如Apache)来判断.重定向. 在Apache中设置重定向有两个办法: 在网站的http ...
- 通过PHP自带的$_SERVER判断 手机访问网站自动跳转到手机版
需要有PC版网站和移动版网站,当手机访问域名的时候,通过PHP自带的$_SERVER判断浏览设备并跳转到移动版页面.如果是PC电脑打开网址,则不跳转直接访问pc版. <?php //php判断客 ...
- JS判断移动端访问设备并加载对应CSS样式
JS判断不同web访问环境,主要针对移动设备,提供相对应的解析方案(判断设备代码直接copy腾讯网的) // 判断是否为移动端运行环境 if(/AppleWebKit.*Mobile/i.test(n ...
- JavaBean组件<jsp:forward>动作<jsp:param>动作登录页面输入用户名和密码,然后进入检查页面判断是否符合要求,符合要求跳转到成功界面,不符合要求返回登录界面,显示错误信息。
JavaBean组件 JavaBean组件实际是一种java类.通过封装属性和方法成为具有某种功能或者处理某个业务的对象. 特点:1.实现代码的重复利用.2.容易编写和维护.3.jsp页面调用方便. ...
- ThinkPHP3.2判断手机端访问并设置默认访问模块的方法
ThinkPHP3.2判断是否为手机端访问并跳转到另一个模块的方法 目录结构 公共模块Common,Home模块,Mobile模块 配置Application/Common/Conf/config.p ...
随机推荐
- LeetCode——Construct the Rectangle
LeetCode--Construct the Rectangle Question For a web developer, it is very important to know how to ...
- Bellman-Ford算法优化
2017-07-27 16:02:48 writer:pprp 在BEllman-Ford算法中,其最外层的循环的迭代次数为n-1,如果不存在负权回路,需要迭代的次数是远远小于n-1; 如果在某一次迭 ...
- mysql 创建数据库 并设置utf8格式
CREATE DATABASE `database` CHARACTER SET utf8 COLLATE utf8_general_ci; 设置utf8之后,不容易出现中文乱码.
- 运行jar_测试代码
1.Eclipse 将 工程 导出成 jar Eclipse --> Export... --> 界面中树状图形中选择" Java下的'JAR file' "(不知道这 ...
- JNI_Z_03_类中的字段和方法的签名
1. Java类型 相应的签名 例子 boolean Z byte B char C short S int I long L float F double D void V Object L用&qu ...
- mysql学习笔记(window下简单使用+Navict)
之前安装过mysql.最近刚好要重新翻出来看看 发现又忘记了那些命令.还是要百度.所以不如自己整理下 尽管网上有很多相关的介绍.当时想对的不如自己整理出来的舒服 首先是下载安装.网上有很多就不一一罗列 ...
- iptables(一)iptables概念
为什么想写这个系列呢?openstack中的安全组.防火墙都是用iptables实现,后面的规则我们如果想要完全理解,不懂iptables的话,或者不精通iptables的话,会看的比较吃力.所以下定 ...
- .SourceInsight添加.S文件
在Option->Document Option添加配置.S然后再去添加文件
- js中去除两端逗号
1.js replace(a,b)之替换字符串中所有指定字符的方法 var str = 'abcadeacf'; var str1 = str.replace('a', 'o'); alert(str ...
- JAVA代码反编译笔记
最近有个朋友说有个java弄的软件是从朋友处拿来的,由于进行了网卡地址绑定,不修改网卡地址无法使用,叫我看看有无办法破解,之前都很少玩这些东西,本着帮忙的心态,尝试了下,便有了一下的笔记内容. 1.使 ...