WordPress使用全局变量判断浏览器及使用平台
由于现在浏览器存在大量的兼容的问题,特别是在国内IE6.0还存在大量的用户情况下,存在大量的浏览器兼容性问题,…
由于现在浏览器存在大量的兼容的问题,特别是在国内IE6.0还存在大量的用户情况下,存在大量的浏览器兼容性问题,而且IE与Firefox,chrome也存在兼容的问题,所以我们在为wordpress写主题的时候就需要不同的样式来渲染不同的浏览器,在wordpress中其实已经考虑到浏览器兼容问题,系统以下变量来判断不同浏览器及各种使用平台:
- $is_iphone – iPhone Safari
 - $is_chrome – Google Chrome
 - $is_safari – Safari
 - $is_NS4 – Netscape 4
 - $is_opera – Opera
 - $is_macIE – Mac Internet Exlporer
 - $is_winIE – Windows Internet Exlporer
 - $is_gecko – FireFox
 - $is_lyn
 - $is_IE – Internet Explorer
 - $is_apache
 - $is_IIS
 - $is_iis7
 
如果我们要对不同的浏览器或者平台使用不同的class样式,可以使用以上全局变量进行判断,你可以将如下代码拷贝到你主题的functions.php文件中:
<?php
add_filter('body_class','browser_body_class');
function browser_body_class($classes) {
	global $is_lynx, $is_gecko, $is_IE, $is_opera, $is_NS4, $is_safari, $is_chrome, $is_iphone;
	if($is_lynx) $classes[] = 'lynx';
	elseif($is_gecko) $classes[] = 'gecko';
	elseif($is_opera) $classes[] = 'opera';
	elseif($is_NS4) $classes[] = 'ns4';
	elseif($is_safari) $classes[] = 'safari';
	elseif($is_chrome) $classes[] = 'chrome';
	elseif($is_IE) $classes[] = 'ie';
	else $classes[] = 'unknown';
	if($is_iphone) $classes[] = 'iphone';
	return $classes;
}
?>
当然你在浏览首页时,body标签就会添加指定的样式,如下所示:
<body class="home blog logged-in safari">
这样你就可以更加不同的平台设置不同的样式,从而解决各种浏览器不兼容的问题。
类别:WordPress入门、 
		本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。
评论功能已经关闭!