个性化阅读
专注于IT技术分析

没有注册脚本可以挂在钩子上时,如何wp_add_inline_script?

wp_add_inline_script的文档指出:

向注册的脚本中添加额外的代码。

没有注册脚本时如何处理?就我而言, 我唯一注册的JS在结束body标签之前, 并且我希望在头部插入一个内联脚本(js检测)。具体来说, 我希望内联JS出现在样式之前, 但要出现在<title>和<meta>标记之后。

我试图使一个空脚本入队, 然后使用它将我的内联脚本挂接到该脚本上, 但这没有用。像这样:

wp_enqueue_script( 'theme-js-detection', null, array(), null, false);

wp_add_inline_script( 'theme-js-detection', '(function(H){H.className=H.className.replace(/\bno-js\b/, "js")})(document.documentElement)' 
);

能做到吗?


#1


要将你的脚本放在样式之前, 我将使用具有较高优先级的动作挂钩wp_enqueue_scripts:

function my_special_inline_script() {
    ?>
    <script>
        // your JS code
    </script>
    <?php
}

add_action( 'wp_enqueue_scripts', 'my_special_inline_script', 1, 1 );

建议将<title>和<meta>放在此之前, 只要将wp_head()直接放在结束<head>标记之前。

赞(0)
未经允许不得转载:srcmini » 没有注册脚本可以挂在钩子上时,如何wp_add_inline_script?

评论 抢沙发

评论前必须登录!