wp_enqueue_scripts, wp_register_scripts, wp_print_scripts: sono confuso


8
  • Ho letto un po 'su questo argomento, ma più leggo, più mi confondo.

  • Qualcuno può spiegare a me in breve qual è la differenza esatta tra wp_enqueue_scripts, wp_register_scriptse wp_print_scripts?

  • Ad esempio, ho il seguente codice nel mio function.php - e funziona, ma non capisco perché non posso usare wp_print_scriptsper i fogli di stile, mentre il codice funziona ancora se lo uso wp_enqueue_scriptsper i file javascript:

    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');
    }
    

Risposte:


9

wp_print_scriptsè l'azione che viene eseguita quando gli script vengono inviati al modello. wp_register_scripte wp_enqueue_scriptsono funzioni per la registrazione / accodamento di script da emettere durante l' wp_print_scriptsesecuzione.

non è possibile registrare o accodare gli stili nell'hook wp_print_scriptsdell'azione perché gli stili sono già stati emessi wp_print_stylesnell'hook, che viene eseguito in precedenza wp_print_scripts.

fare riferimento al riferimento dell'azione per vedere l'ordine in cui vengono eseguite le cose in una richiesta:

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

Quindi, qual è la differenza tra wp_enqueue_script e wp_register_script?
Jeff K.

3
wp_register_script registra lo script con WordPress, ma non lo aggiunge alla coda. Se non chiami anche wp_enqueue_script, lo script non verrà visualizzato. Lo scopo di questo è di permetterti di registrare il tuo script una volta, quindi successivamente accodarlo in modo condizionale da qualche altra parte nel tuo codice. Ciò è utile per gli sviluppatori di plug-in in cui uno script può essere accodato in più punti all'interno del codice. Puoi anche accodare direttamente il tuo script senza registrarlo.
Milo,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.