解决discuz“你访问的页面无手机页面,是否进一步访问电脑版” – 迷途通

国人太不要脸了!
你不知道就说不知道,为了流量可以假装知道,
然后还让大家跟着操作,操作半天,说不定忘了备份,还原不了。
也不要太相信我,操作之前先备份好。

结论是:
目前没有人解决这个问题,官方论坛给你的解决方案,也是跳转到电脑版。

我的解决方法是:
干脆直接把【简易版】去掉,只有【触屏版】和【电脑版】
因为【简易版】支持不了,所以会这样提示,
既然支持不了,要跳转到【电脑版】,干脆不显示呗!

<a style="display:none;" href="{$_G['setting']['mobile']['simpletypeurl'][0]}">{lang no_simplemobiletype}</a> |  

就是把【简易版】那个链接给隐藏起来,不让人点到。
你如果觉得我的方法不是最好的,其他人的方法我都复制到下面了。
更多方法

下面是footer.htm全部代码:

<!--{hook/global_footer_mobile}-->
<!--{eval $useragent = strtolower($_SERVER['HTTP_USER_AGENT']);$clienturl = ''}-->
<!--{if strpos($useragent, 'iphone') !== false || strpos($useragent, 'ios') !== false}-->
<!--{eval $clienturl = $_G['cache']['mobileoem_data']['iframeUrl'] ? $_G['cache']['mobileoem_data']['iframeUrl'].'&platform=ios' : '';}-->
<!--{elseif strpos($useragent, 'android') !== false}-->
<!--{eval $clienturl = $_G['cache']['mobileoem_data']['iframeUrl'] ? $_G['cache']['mobileoem_data']['iframeUrl'].'&platform=android' : '';}-->
<!--{elseif strpos($useragent, 'windows phone') !== false}-->
<!--{eval $clienturl = $_G['cache']['mobileoem_data']['iframeUrl'] ? $_G['cache']['mobileoem_data']['iframeUrl'].'&platform=windowsphone' : '';}-->
<!--{/if}-->

<div id="mask" style="display:none;"></div>
<!--{if !$nofooter}-->
<div class="footer">
	<div>
		<!--{if !$_G[uid] && !$_G['connectguest']}-->
		<a href="forum.php">{lang mobilehome}</a> | <a href="member.php?mod=logging&action=login" title="{lang login}">{lang login}</a> | <a href="<!--{if $_G['setting']['regstatus']}-->member.php?mod={$_G[setting][regname]}<!--{else}-->javascript:;" style="color:#D7D7D7;<!--{/if}-->" title="{$_G['setting']['reglinkname']}">{lang register}</a>
		<!--{else}-->
		<a href="home.php?mod=space&uid={$_G[uid]}&do=profile&mycenter=1">{$_G['member']['username']}</a> , <a href="member.php?mod=logging&action=logout&formhash={FORMHASH}" title="{lang logout}" class="dialog">{lang logout}</a>
		<!--{/if}-->
	</div>
    <div>
		<a style="display:none;" href="{$_G['setting']['mobile']['simpletypeurl'][0]}">{lang no_simplemobiletype}</a> |  
		<a href="javascript:;" style="color:#D7D7D7;">{lang mobile2version}</a> | 
		<a href="{$_G['setting']['mobile']['nomobileurl']}">{lang nomobiletype}</a> | 
		<!--{if $clienturl}--><a href="$clienturl">{lang clientversion}</a><!--{/if}-->
    </div>
	<p>&copy; mitutong.com</p>
</div>
<!--{/if}-->
</body>
</html>
<!--{eval updatesession();}-->
<!--{if defined('IN_MOBILE')}-->
	<!--{eval output();}-->
<!--{else}-->
	<!--{eval output_preview();}-->
<!--{/if}-->

以下是复制来的解决方案,都是骗人的,我放在一起,你觉得有用,就尝试一下:

1001百度排名第一的,不知所云,谁知道详细说明一下

在运营discuz网站的过程中,某些页面总是会出现“你访问的页面无手机页面,是否进一步访问电脑版”的问题。

但实际上我们网站是有该页面对应的手机版页面的。   

目前其他网站给出的解决办法更多是在于修改该提示语或者直接忽略提示进入电脑版页面。这些方法并没有实际解决问题。   

经过对比不会出现该提示的页面代码,我发现问题可能出现在:在该页面对应的手机版模板文件中直接调用了css文件。 在discuz的模板中,一般都是直接在首页header文件中引用了需要使用到的全部css和js文件,并不会在单独的模板文件中引入额外的css文件。 我将在出问题页面中引用的css文件放到手机模板header文件中引用,经过实际测试发现,没有再出现上述提示。   遇到同样问题的站长可以尝试我上面提到的这个方法。

1002官方论坛的解决方案,我注册了半天,原来就是这些内容,晕。

去除"您访问的页面无手机页面,是否进一步访问电脑版?"
效果,打开没有手机页面的地址,直接跳转到电脑版
不良影响:后续操作都是进入电脑版

修改方法:
打开:source\class\helper\helper_mobile.php
搜索
showmessage('not_in_mobile');
改为
dheader('location:'.$_G['setting']['mobile']['pageurl']);

搜索
$query['forcemobile'] = '1';
改为
$query['mobile'] = 'no';

这TM就是跳转嘛,直接说跳转就行了,它不说,让我操作半天,又不得不还原,国人啊!

1003过时的方法,新版本来就改过来了

discuz 论坛只从更新出了手机版以后,大部分开发者都制作自己手机版。但是官网提供手机版还是很简单,很多页面都没有对应模板,导致从电脑端跳转到手机端时候,会提示“提示您访问的页面无手机页面,是否进一步访问电脑版” ,这样导致体验很不好,大多数解决方案:强制刷新的方法或者重定向,这样也不是最好解决方案。下面教大家如何解决:
打开程序文件找到 source/function/function_core.php第618行:

$mobiletplfile = ‘./template/default/’.$mobiletplfile;
改成
$mobiletplfile = ‘./template/default/’.$file.’.htm’;

1004官方论坛有个实诚人,说三种方法都解决不了。

https://discuz.dismall.com/thread-3842611-1-1.html
DZ版本:3.4 GBK
问题:访问手机页面,偶尔会出现:提示您访问的页面无手机页面,是否进一步访问电脑版? 问题出现几率:大概在30%!

请问各位大佬,有彻底解决的办法吗?非常感谢!!!

查看论坛的解决方法如下:
方法一无效;方法二强制刷新不是彻底解决;方法三:强制刷新不是彻底解决;


方法一:(对DZ3.4版本无效,搜索不到618行内容)
ource/function/function_core.php

找到 source/function/function_core.php第618行:

把

$mobiletplfile = ‘./template/default/’.$mobiletplfile;

改成

$mobiletplfile = ‘./template/default/’.$file.’.htm’;


方法二:(强制刷新即使0秒,也还可以瞬间看到 无手机页面 的界面跳转)
sourcelanguage
lang_message.php
查找:
‘not_in_mobile‘ => ‘您访问的页面无手机页面,是否进一步访问电脑版?‘,
更换为:
‘not_in_mobile‘ => ‘<style>body {background:#000000;height:1000px;width:auto;}</style><meta http-equiv="refresh" content="0;url=forum.php?mod=portal&mobile=yes">‘,

方法三:(强制刷新即使0秒,也还可以瞬间看到 无手机页面 的界面跳转)
找到 根目录\source\language\lang_message.php 文件

找到 第1056行

将 'not_in_mobile' => '您访问的页面无手机页面,是否进一步访问电脑版?',  修改为

'not_in_mobile' => '<meta http-equiv="refresh" content="0" />',

1005一本正经的胡说八道

discuz您访问的页面无手机页面,将进一步访问电脑版

在使用手机版本时经常可以看到用手机登录时会出现您访问的页面无手机页面,是否进一步访问电脑版?这种情况,其实大部分是由于门户站分首页和论坛造成的。如何解决?答案在下方:

\source\language\lang_message.php
查找:
'not_in_mobile' => '您访问的页面无手机页面,是否进一步访问电脑版?',
更换为:
'not_in_mobile' => '<style>body {background:#000000;height:1000px;width:auto;}</style><meta http-equiv="refresh"

content="0;url=forum.php?mod=portal&mobile=yes">',

以上方法治标

治本的方法:

网上提供的解决方案都没有找到问题的根本原因,只是提供了强制刷新的方法,根据本人的调试最终找到了此bug的问题所在,只需要修改

source/function/function_core.php

找到 source/function/function_core.php

把


$mobiletplfile = './template/default/'.$mobiletplfile;

复制代码

改成

$mobiletplfile = './template/default/'.$file.'.htm';

复制代码
这样就彻底解决了这个问题,希望官方尽快修复这个bug,不然手机版因为这个问题用户体验很不好,流失很多用户

1006 莫名其妙的

登陆ftp找到
\source\language
lang_message.php
查找:
'not_in_mobile' => '您访问的页面无手机页面,是否进一步访问电脑版?',
更换为:
'not_in_mobile' => '<style>body {background:#000000;height:1000px;width:auto;}</style><meta http-equiv="refresh" content="0;url=forum.php?mod=portal&mobile=yes">',

这样就可以了,大家可以看下

发表回复

您的电子邮箱地址不会被公开。