温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

电脑端和手机端同url展示

发布时间:2020-07-22 21:00:17 阅读:464 作者:hui0371 栏目:开发技术
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

同URL显示需要操作3步:

1、在扩展函数里写设备判断函数checkmobile():

\phpcms\libs\functions\extention.func.php

/**
 *  extention.func.php 用户自定义函数库
 *
 * @copyright			(C) 2005-2010 PHPCMS
 * @license				http://www.phpcms.cn/license/
 * @lastmodify			2010-10-27
 *
 *
 * 根据php的$_SERVER['HTTP_USER_AGENT'] 中各种浏览器访问时所包含各个浏览器特定的字符串来判断是属于PC还是移动端
 * @author           discuz3x
 * @lastmodify    2014-04-09
 * @return  BOOL
 */
function checkmobile({
 global $_G;
 $mobile array();
//各个触控浏览器中$_SERVER['HTTP_USER_AGENT']所包含的字符串数组
 static $touchbrowser_list =array('iphone''android''phone''mobile''wap''netfront''java''opera mobi''opera mini',
    'ucweb''windows ce''symbian''series''webos''sony''blackberry''dopod''nokia''samsung',
    'palmsource''xda''pieplus''meizu''midp''cldc''motorola''foma''docomo''up.browser',
    'up.link''blazer''helio''hosin''huawei''novarra''coolpad''webos''techfaith''palmsource',
    'alcatel''amoi''ktouch''nexian''ericsson''philips''sagem''wellcom''bunjalloo''maui''smartphone',
    'iemobile''spice''bird''zte-''longcos''pantech''gionee''portalmmm''jig browser''hiptop',
    'benq''haier''^lct''320x320''240x320''176x220');
//window手机浏览器数组【猜的】
 static $mobilebrowser_list =array('windows phone');
//wap浏览器中$_SERVER['HTTP_USER_AGENT']所包含的字符串数组
 static $wmlbrowser_list array('cect''compal''ctl''lg''nec''tcl''alcatel''ericsson''bird''daxian''dbtel''eastcom',
   'pantech''dopod''philips''haier''konka''kejian''lenovo''benq''mot''soutec''nokia''sagem''sgh',
   'sed''capitel''panasonic''sonyericsson''sharp''amoi''panda''zte');
 $pad_list array('pad''gt-p1000');
 $useragent strtolower($_SERVER['HTTP_USER_AGENT']);
 if(dstrpos($useragent$pad_list)) {
  return false;
 }
 if(($v dstrpos($useragent$mobilebrowser_listtrue))){
  $_G['mobile'] = $v;
  return '1';
 }
 if(($v dstrpos($useragent$touchbrowser_listtrue))){
  $_G['mobile'] = $v;
  return '2';
 }
 if(($v dstrpos($useragent$wmlbrowser_list))) {
  $_G['mobile'] = $v;
  return '3'//wml版
 }
 $brower array('mozilla''chrome''safari''opera''m3gate''winwap''openwave''myop');
 if(dstrpos($useragent$brower)) return false;
 $_G['mobile'] = 'unknown';
//对于未知类型的浏览器,通过$_GET['mobile']参数来决定是否是手机浏览器
 if(isset($_G['mobiletpl'][$_GET['mobile']])) {
  return true;
 } else {
  return false;
 }
}
/**
 * 判断$arr中元素字符串是否有出现在$string中
 * @param  $string     $_SERVER['HTTP_USER_AGENT']
 * @param  $arr          各中浏览器$_SERVER['HTTP_USER_AGENT']中必定会包含的字符串
 * @param  $returnvalue 返回浏览器名称还是返回布尔值,true为返回浏览器名称,false为返回布尔值【默认】
 * @author           discuz3x
 * @lastmodify    2014-04-09
 */
function dstrpos($string$arr$returnvalue false{
 if(empty($string)) return false;
 foreach((array)$arr as $v) {
  if(strpos($string$v) !== false) {
   $return $returnvalue $v true;
   return $return;
  }
 }
 return false;
}

2、修改模块负责解析的函数

以content模块为例:

修改 \phpcms\modules\content\index.php

修改template函数参数,增加判断;

if(checkmobile()){
			include template('mobile','index',$default_style);
		}else{
		include template('content','index',$default_style);}

3、设置手机版的模板,根据模板解析函数的设置参数,需要在模板文件夹下创建mobile文件夹,并在mobile文件夹中编写手机版的模板即可

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI

开发者交流群×