从HEAD函数中删除唯一脚本时排除某些脚本

时间:2016-09-22 作者:Александр

在尝试优化我的站点加载时间时,我注意到头部有一大包js。搜索后,我找到了一个解决方案:

function remove_head_scripts() {
   remove_action(\'wp_head\', \'wp_print_scripts\');
   remove_action(\'wp_head\', \'wp_print_head_scripts\', 9);
   remove_action(\'wp_head\', \'wp_enqueue_scripts\', 1);

   add_action(\'wp_footer\', \'wp_print_scripts\', 5);
   add_action(\'wp_footer\', \'wp_enqueue_scripts\', 5);
   add_action(\'wp_footer\', \'wp_print_head_scripts\', 5);
}
add_action( \'wp_enqueue_scripts\', \'remove_head_scripts\' );
很好,但。。。有些插件在正文中包含一些内联脚本,例如滑块或其他插件。所以脚本像jquery.jsjquery-migrate.min.js 通过此函数移动到页脚,而内联正文jQuery文本会导致许多错误。

有没有办法重写函数以排除某些脚本加载到页脚中,例如jquery.jsjquery-migrate.min.js?

1 个回复
SO网友:cjbj

您正在从头部移除通常用于注册和排队脚本的挂钩。通常,但不一定。您还可以跳过中间挂钩并将脚本直接排入wp_head 像这样:

add_action(\'wp_head\',\'wpse240186_enqueue_jquery\');

function wpse240186_enqueue_jquery() {
  wp_register_script(\'jquery\', \'path_to/jquery.min.js\');
  wp_enqueue_script(\'jquery\');
  }
通过这种方式,您可以像以前一样将脚本一般移动到页脚,但将选定的脚本放在页眉中。

相关推荐

JQuery php请求返回一个奇怪的结果

我有一个奇怪的小故障发生在我身上,我不知道我是如何产生它的,或者它是否是正常的。我正在开发自己的插件,当一个足球队/足球队被输入到一个框中时,它会检查它是否已经在数据库中。以下是我的代码行add_action( \'admin_footer\', \'fws_teamcheck_javascript\' ); function fws_teamcheck_javascript() { ?> <script type="text/javascript">