WordPress程序判断移动端设备的常用函数wp_is_mobile(),是用来检测当前浏览器是否运行在智能手机、平板电脑等移动设备上。
但某些情况下,这个函数并不能满足我们的需求,比如我们要分别判断 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是用来检测访问者在用什么操作系统(包括版本号)和浏览器(包括版本号)。