简单实现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

要回复文章请先登录注册