wp_enqueue_script in the footer

34,244

Solution 1

By default WordPress default JavaScripts won’t move to the footer, a workaround is to add its path :

wp_enqueue_script('jquery','/wp-includes/js/jquery/jquery.js','','',true);

See detailled post about this

Solution 2

Make sure you have the wp_footer() right before the </body> tag. See the $in_footer parameter for more info. You also need to call this before wp_head has run. Try also using this action.

add_action('wp_enqueue_scripts', 'add_scripts_to_pages');

Another thing to try is using NULL as 3rd and 4th parameters.

Share:
34,244
jasonaburton
Author by

jasonaburton

Updated on July 05, 2022

Comments

  • jasonaburton
    jasonaburton almost 2 years

    Having problems enqueuing a script in the footer.

    wp_deregister_script('jquery');
    wp_enqueue_script('jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js', array(), false, true);
    

    Here's the wp_enqueue_script definition:

    wp_enqueue_script( 
         $handle
        ,$src
        ,$deps
        ,$ver
        ,$in_footer 
    );
    

    As you can see I am setting $in_footer to true. This does not work for me. Without that argument it works fine and puts it in header.php. Why doesn't it work with $in_footer?

  • Nathaniel Flick
    Nathaniel Flick almost 6 years
    using both: true, $in_footer = true works for me but I'm not sure why. When I remove the first true, it doesn't work, but using both together does.