Wordpress - Enqueue脚本仅适用于IE

问题描述:

我想使用dd belatedpng,因此我的网站上的PNG在IE上正常显示。我一直在非WordPress的网站使用的脚本是Wordpress - Enqueue脚本仅适用于IE

<!--[if lt IE 7 ]> 
    <script src="js/dd_belatedpng.js"></script> 
    <script> DD_belatedPNG.fix('img, .ir'); </script> 
<![endif]--> 

现在,我需要使用它的一个WordPress的网站,我试图找到将使用wp_enqueue_script该脚本的方式(虽然我不根本不喜欢那个系统)。在一天结束时,主题只会在单个网站上使用,我更愿意对脚本路径进行硬编码。

无论如何,有没有办法添加IE条件列队脚本和或注册脚本?

浏览器检测功能内置到WordPress与全局变量$is_IE所以......

<?php 
global $is_IE; 
if ($is_IE) { 
    wp_enqueue_script('dd_belatedpng', bloginfo('template_directory').'/js/dd_belatedpng.js'); 
} 
?> 

对于要执行的实际脚本,你应该把它添加到排入另一个文件与dd_belatedpng作为依赖。

+1

缓存怎么样?这不会绕过PHP浏览器检测,因为用户只是加载缓存的HTML? – 2012-10-10 13:14:46

如果您使用PHP来检测functions.php文件中的浏览器,然后将简单的if/else语句添加到它,该怎么办?

if (isset($_SERVER['HTTP_USER_AGENT']) && 
    (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false)){ 
     wp_enqueue_script('jquery'); 
    } else { 
     return false; }