WordPress只将Javascript移动到页脚

时间:2016-08-17 14:04:37

标签: php wordpress

现在我正在使用一个非常简单的函数将WordPress的javascript移动到页脚:

function move_javascripts() {
    remove_action( 'wp_head', 'wp_enqueue_scripts', 1 );
    add_action( 'wp_footer', 'wp_enqueue_scripts', 5 );
}

问题是这个代码似乎将所有“脚本”带到页脚,甚至是CSS ...我试图找到一种方法只移动.js部分,但我找不到任何...

那么有没有办法只针对javascripts并将它们移动到没有CSS的页脚?

2 个答案:

答案 0 :(得分:2)

你对整个WordPress脚本系统非常过分,说实话 - 这完全是,我的意思是完全错了。当您将脚本插入WordPress时,可以通过wp_enqueue_script执行此操作。

此函数有5个参数,其中最后一个可以设置为true,以便将其加载到页脚中。

以下是我的functions.php的摘录:

if (!function_exists('wp_template_setup')) {

    wp_enqueue_script('modernizr-script', get_template_directory_uri() .   '/js/libs/modernizr.custom.js', '', '', true);
}
add_action('wp_enqueue_scripts', 'wp_template_setup');

最后一个参数设置为true,这意味着它将被加载到页脚中。

有关详细信息,请参阅WordPress Codex:https://developer.wordpress.org/reference/functions/wp_enqueue_script/

答案 1 :(得分:0)

wp_register_script()调用(脚本入队的地方)中,有一个名为$in_footer的第五个参数,专门用于此事。在那里扔一个true,它会将脚本移动到页脚。请注意,您必须在每次wp_register_script()来电时执行此操作。