求助

Discuz!论坛PC访问帖子链接带有&mobile=2怎么回事?

Discuz!教程  / DZ教程  / 倒序浏览   © 著作权归作者本人所有

#楼主# 2017-11-19

跳转到指定楼层

本站会员必须 邮箱验证成功后 才能发帖。马上注册查阅更多教程,下载海量资源,让你轻松玩做站

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

DZ手机版又分触屏版和简易版。现在简易版已经毫无意义,一般说DZ的手机模板就指触屏版。
我们用来区分手机版是触屏版还是简易版等链接是通过&mobile=X来区分。所以现在基本上是&mobile=2;
那么问题就来了,带有&mobile=2的链接在PC上访问是进入misc.php?mod=mobile这个页面,有人会说这有什么关系呢?
这就得说说我们最最关心的了,搜索引擎现在也在大力发展手机方面内容,它有可能收录到带有&mobile=2的链接,那么在PC上访问到这样的链接就惨不忍睹了。
方法如下:
第一步:
找到文件/source/class/helper/helper_mobile.php中:
  1. $content = preg_replace("/href="(\w+\.php)(.*?)"/e", "mobilereplace('\\1', '\\2')", $content);
复制代码


将其删除或者注释掉即可;
第二步:
查找文件/source/function/function_core.php中:
  1. function dheader($string, $replace = true, $http_response_code = 0)
复制代码


将其下面的:
  1. if(defined('IN_MOBILE') && strpos($string, 'mobile') === false && $islocation) {
  2.                 if (strpos($string, '?') === false) {
  3.                         $string = $string.'?mobile='.IN_MOBILE;
  4.                 } else {
  5.                         if(strpos($string, '#') === false) {
  6.                                 $string = $string.'&mobile='.IN_MOBILE;
  7.                         } else {
  8.                                 $str_arr = explode('#', $string);
  9.                                 $str_arr[0] = $str_arr[0].'&mobile='.IN_MOBILE;
  10.                                 $string = implode('#', $str_arr);
  11.                         }
  12.                 }
  13.         }
复制代码


删除或者注释掉即可。
这样做之后再手机上访问和PC上访问的是同一个链接,也能正常访问手机版,需要注意的是要设置默认手机版是触屏版,相信现在没人不是这么设置。
宝塔服务器面板,一键全能部署及管理,送你¥3188礼包,点我领取
转播转播 分享淘帖
回复

使用道具

成为第一个回答人

B Color Link Quote Code Smilies
关闭

站长推荐上一条 /3 下一条