现在才知道wordpress 中这么一个功能强大的函数-wp_is_mobile()函数。 使用这个函数可以自动检测出当前访客使用的浏览设备是不是手机,并返回一个布尔值。 目前wp_is_mobile()函数支持Iphone、ipad、android、silk、kindle、BlackBerry、Opera Mini等众多移动设备及浏览器,使用该函数可以帮助开发者更好地制作响应式wordpress主题、独立手机主题或者各类型手机相关的插件。

使用方法:

<php? if(wp_is_moblile()){ echo '你正在使用移动设备浏览'; }else{ echo '你目前使用的不是移动设备'; } ?>

相信有过响应式设计的人都知道这个功能是多么的强大!

之前我翻译过一篇关于使用media css3来实现响应式设计的博文,使用css3可以把网站的样式改变,自适应不同屏幕大小的设备浏览,有些内容是直接使用display:none;去隐藏起来,实现是使用手机浏览的时候,还是要加载这一部分内容。

现在有了这个功能强大的函数,完全可以使用来显示不同的判断哪部分内容要加载,哪部分不用加载,还可以使用这个函数来改变不同的class,为不同的设备书写不同的样式,从而达到完美的效果。
让我们来看一下这个函数的源代码,

function wp_is_mobile() {
static $is_mobile;

if ( isset($is_mobile) )
return $is_mobile;

if ( empty($_SERVER['HTTP_USER_AGENT']) ) {
$is_mobile = false;
} elseif ( strpos($_SERVER['HTTP_USER_AGENT'], 'Mobile') !== false // many mobile devices (all iPhone, iPad, etc.)
|| strpos($_SERVER['HTTP_USER_AGENT'], 'Android') !== false
|| strpos($_SERVER['HTTP_USER_AGENT'], 'Silk/') !== false
|| strpos($_SERVER['HTTP_USER_AGENT'], 'Kindle') !== false
|| strpos($_SERVER['HTTP_USER_AGENT'], 'BlackBerry') !== false
|| strpos($_SERVER['HTTP_USER_AGENT'], 'Opera Mini') !== false ) {
$is_mobile = true;
} else {
$is_mobile = false;
}

return $is_mobile;
}

从源代码中我们可以看出,这个功能强大的函数,已经可以识别很多的移动设备的浏览器了,包括Iphone,ipad, android, silk, kindle ,BlackBerry,Opera Mini以及Opera Mini。这基本上已经满足了所有的移动设备了!

如果你想做一个响应式主题,也许这个函数会对你有帮助!