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>标记之前。
评论前必须登录!
注册