WordPress判断各种移动端设备的函数

WordPress有个判断手机端的函数wp_is_mobile(),是WordPress 3.4.0版本增加的一个内置函数,作用是检测当前浏览器是否运行在智能手机、平板电脑等移动设备上。

但某些情况下,这个函数并不能满足我们的需求,比如我们要分别判断 iPhone、Android以及iPad等等,在这个情况下,wp_is_mobile() 是明显不够用的,那么我们可以自己增加一点代码来判断各种移动端设备。

将以下代码添加到当前使用的WordPress主题的functions.php中

// 添加移动端设备判断函数
function is_ipad() { // 只检测iPad
	$is_ipad = (bool) strpos($_SERVER['HTTP_USER_AGENT'],'iPad');
	if ($is_ipad)
		return true;
	else return false;
}
function is_iphone() { // 只检测iPhone
	$cn_is_iphone = (bool) strpos($_SERVER['HTTP_USER_AGENT'],'iPhone');
	if ($cn_is_iphone)
		return true;
	else return false;
}
function is_ios() { // 检测所有iOS设备
	if (is_iphone() || is_ipad())
		return true;
	else return false;
}
function is_android() { // 检测所有android设备
	$is_android = (bool) strpos($_SERVER['HTTP_USER_AGENT'],'Android');
	if ($is_android)
		return true;
	else return false;
}
function is_android_mobile() { // 只检测Android手机
	$is_android   = (bool) strpos($_SERVER['HTTP_USER_AGENT'],'Android');
	$is_android_m = (bool) strpos($_SERVER['HTTP_USER_AGENT'],'Mobile');
	if ($is_android && $is_android_m)
		return true;
	else return false;
}
function is_android_tablet() { // 只检测Android平板电脑
	if (is_android() && !is_android_mobile())
		return true;
	else return false;
}
function is_mobile_device() { // 检测Android手机、iPhone
	if (is_android_mobile() || is_iphone())
		return true;
	else return false;
}
function is_tablet() { // 检测Android平板电脑和iPad
	if ((is_android() && !is_android_mobile()) || is_ipad())
		return true;
	else return false;
}

😄 是不是挺简单,HTTP_USER_AGENT是用来检测访问者在用什么操作系统(包括版本号)和浏览器(包括版本号)。

分享海报

关于我

大胡子,男,生于1994年,河南洛阳人。

很多人对我的网名有误解,这里顺便解释一下,我姓胡,大胡子这个网名始于2013年,早期的一些网友管我叫胡子,然后我就给自己取了个网名叫「大胡子」,这里的「大」是长大了的意思。

自由职业者,8年WordPress网站开发经验,不善言辞,喜欢爬山、摄影,油泼面的粉丝,和很多人一样,包揽了生活中不同的角色和位置。

如果你有网站相关类的业务需求,可以联系我哦,期待与你的合作~