wp_enqueue_scripts, wp_register_scripts, wp_print_scripts: i’m confused

  • I’ve been reading up a bit on this subject, but the more I read – the more confused I get.

  • Can someone explain to me in short what’s the exact difference between wp_enqueue_scripts, wp_register_scripts and wp_print_scripts?

    Read More
  • For example, I have the following code in my functions.php – and it’s working, but I do not understand why I can not use wp_print_scripts for the stylesheets, whereas the code still works if I use wp_enqueue_scripts for the javascript files:

    add_action('wp_print_scripts', 'add_my_js');
    function add_my_js(){
        if(!is_admin()){
            wp_enqueue_script('default',  get_bloginfo('stylesheet_directory').'/js/default.js', array('jquery'));
        }
    }
    
    add_action('wp_enqueue_scripts', 'add_my_stylesheet');
    function add_my_stylesheet() {
        wp_register_style('default', get_bloginfo( 'stylesheet_url'));
        wp_enqueue_style( 'default');
    }
    

Related posts

Leave a Reply

1 comment

  1. wp_print_scripts is the action that runs when scripts are output to the template. wp_register_script and wp_enqueue_script are functions for registering/enqueueing scripts to be output when wp_print_scripts runs.

    you can’t register or enqueue styles in the wp_print_scripts action hook because styles have already been output in the wp_print_styles hook, which runs before wp_print_scripts.

    refer to the action reference to see the order things are executed in in a request:

    22. wp_head
    23. wp_enqueue_scripts
    24. wp_print_styles
    25. wp_print_scripts