WordPress WP入队脚本问题

我在WordPress中遇到有关wp_enqueue_script()的怪异事情, 我想发生的事情是通过向action.php添加动作钩子来在页面上添加脚本, 但是当我这样做时, 它没有在页面上添加脚本页面, 但是当我将代码作为插件放置时, 它现在在页面上添加了脚本
注意:当我在页脚中添加脚本时, 在functions.php中:add_action(‘ wp_footer’ , ‘ function_name’ ); 它可以正常工作, 但是当我将其添加到wp_head上并在init上添加代码时, 它不会添加脚本, 但是即使将其添加到wp_head和在里面
我需要在INIT或WP_HEAD上添加脚本, 但是当我将函数代码放在函数上时不起作用。PHP, 我需要将脚本作为主题的一部分而不是插件

//functions.php add_action('init', 'function_name'); function function_name(){ wp_enqueue_script( 'script_holder', get_template_directory_uri() . '/script.js'); }//as a plugin add_action('init', 'function_name'); function function_name() { $plugin_location=WP_PLUGIN_URL.'/'.str_replace(basename( __FILE__), "", plugin_basename(__FILE__)); if( !is_admin()){ wp_enqueue_script( 'script_holder', $plugin_location . '/script.js'); } }

我知道它甚至在functions.php中也可以工作, 但是我真的想知道为什么会发生这种情况, 有人可以帮助我并向我解释为什么会发生这种情况吗?
非常感谢你
基本上这就是我在做什么:
add_action('init', 'override_jquery'); function override_jquery() { if( !is_admin()){ wp_deregister_script('jquery'); wp_enqueue_script( 'nashgraphics_jquery_library', get_template_directory_uri() . '/bootstrap/js/jquery-1.9.0.min.js'); } }

#1可能有几件事发生, 但是由于问题仅发生在functions.php上, 因此人们会认为这与主题有关。你应该确保主题同时具有:
wp_head()–(紧接< / head> 之前)

wp_footer()–(即将关闭< / body> )
如果主题作者没有同时包含这两个主题, 或者即使缺少这些功能中的一个, 主题都可能丢失, 脚本可能无法加载。 (并且80%的插件都会有问题)。
另外, 你也没有指定使用哪个主题(你自己的代码??)以及是否是子主题。
你正在使用不能被子主题覆盖的get_template_directory_uri(), 我不知道这是否是问题的一部分, 但你可能还想尝试使用get_stylesheet_directory_uri(), 在许多情况下, 这是更好的选择。
【WordPress WP入队脚本问题】看到你的更新:
在不进行回退的情况下, 用另一个jQuery替换核心jQuery是非常糟糕的做法。无论如何, 你可以尝试删除!is_admin()条件, 或者注销并观看你的站点代码。 (我有种感觉, 你在登录时使用wp admin栏时正在调试它。)
#2可以在前端使脚本入队的合适钩子是wp_enqueue_scripts:http://codex.wordpress.org/Plugin_API/Action_Reference/wp_enqueue_scripts

    推荐阅读