简单实现pc wap 微信 “三端”独立!

因为百度的熊账号要求移动端不能有跳转,所以就有了这么个需求。
也就是手机浏览器访问的其实是pc端;
但又不想损失手机版前端的功能,特别是微信相关的如登录、分享接口等,所以微信端还是得保留跳转;
 
修改方法:
编辑/system/functions.inc.php
找到
function is_mobile($ignore_cookie = false)
{
if (HTTP::get_cookie('_ignore_ua_check') == 'TRUE' AND !$ignore_cookie)
{
return false;
}

$user_agent = strtolower($_SERVER['HTTP_USER_AGENT']);

if (preg_match('/playstation/i', $user_agent) OR preg_match('/ipad/i', $user_agent) OR preg_match('/ucweb/i', $user_agent))
{
return false;
}

if (preg_match('/iemobile/i', $user_agent) OR preg_match('/mobile\ssafari/i', $user_agent) OR preg_match('/iphone\sos/i', $user_agent) OR preg_match('/android/i', $user_agent) OR preg_match('/symbian/i', $user_agent) OR preg_match('/series40/i', $user_agent))
{
return true;
}

return false;
}
替换为
function is_mobile($ignore_cookie = false) { 
if(in_weixin()){
if (HTTP::get_cookie('_ignore_ua_check') == 'TRUE' AND !$ignore_cookie)
{
return false;
}

$user_agent = strtolower($_SERVER['HTTP_USER_AGENT']);

if (preg_match('/playstation/i', $user_agent) OR preg_match('/ipad/i', $user_agent) OR preg_match('/ucweb/i', $user_agent))
{
return false;
}

if (preg_match('/iemobile/i', $user_agent) OR preg_match('/mobile\ssafari/i', $user_agent) OR preg_match('/iphone\sos/i', $user_agent) OR preg_match('/android/i', $user_agent) OR preg_match('/symbian/i', $user_agent) OR preg_match('/series40/i', $user_agent))
{
return true;
}

return false;
}else{
return false;
}
}
搞定!
就加了个in_weixin判断,在该行代码下方就能看到in_weixin这个函数,其实程序默认是有特别配置微信前端的,比如微信内访问是没有头部蓝条的。

3 个评论

有没有公众号,可以发我看看哪
百度刚把熊掌号升级为熊掌ID,这个代码修改就是为了适应新要求的吗?
不错啦,good

要回复文章请先登录注册