如何使用WordPress中的函数在脚本上添加评论?

时间:2014-02-22 作者:chris

如果浏览器是ie,这是我用来调用脚本的代码

<!--[if IE]> <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script> <style type="text/css"> .clear { zoom: 1;display: block;} </style> <![endif]-->
但我如何在函数中添加这个。php作为我们调用js的正常方式

wp_register_script(\'html5js\', ("http://html5shiv.googlecode.com/svn/trunk/html5.js"), false, \'1.3.2\');
wp_enqueue_script(\'html5js\');
我不想在头上静态插入代码还有其他方法生成注释吗?

1 个回复
SO网友:David

有一种使用条件注释的通用方法–用于样式。但不幸的是,在#16024 将被修复。有关详细信息,请参见this answer.

要使主题脚本可过滤,可以在wp_print_scripts 并在其中应用自定义筛选器。

/**
 * prints a conditional comments wrapped script
 *
 * @wp-hook wp_print_scripts
 * @return void
 */
add_action( \'wp_print_scripts\', \'wpse_135545_enqueue_print_script\' );
function wpse_135545_enqueue_print_script() {

    $params = apply_filters(
        \'wpse_135545_enqueue_print_script\',
        array(
            \'url\'     => \'http://html5shiv.googlecode.com/svn/trunk/html5.js\',
            \'version\' => \'1.0\',
            \'cond\'    => \'IE\'
        )
    );

    if ( empty( $params[ \'url\' ] ) )
        return;

    printf(
        "<!--[if %s]>\\n\\t<script src=\\"%s\\"></script>\\n<![endif]-->\\n",
        $params[ \'cond\' ],
        add_query_arg( \'v\', $params[ \'version\' ], $params[ \'url\' ] )
    );
}
插件或子主题作者现在可以通过过滤器更改参数或完全移除挂钩来处理此问题。(顺便说一句,version参数与指向主干的url组合时没有意义。您可以考虑链接到脚本的修复版本。)

结束

相关推荐

通过wp_LOCALIZE_SCRIPT将特定于id的对象传递给javascript时出现问题

我使用wp\\u localize\\u脚本将多个数据数组传递到javascript文件中。为了区分不同的数组(并防止覆盖),它们的标签相对于它们来源的post id。我需要在js文件中使用的对象如下所示,例如:playlist150.tracks playlist257.tracks 我已将DOM元素设置为与对象名称匹配,例如:<div id=\"playlist150\" class=\"playlist-item\"></div> <