Come far caricare lo script dopo jQuery?

10 apr 2012, 20:22:02
Visualizzazioni: 44.4K
Voti: 14
function load_my_script(){
    // Registra lo script con jQuery come dipendenza
    wp_register_script('my_script', get_template_directory_uri() . '/js/myscript.js', array('jquery'));
    // Carica lo script
    wp_enqueue_script('my_script');
}
add_action('wp_enqueue_scripts', 'load_my_script');

myscript.js si sta caricando prima di jQuery, perché? E come posso farlo caricare DOPO jQuery?

Grazie.

0
Tutte le risposte alla domanda 2
3
21

C'è un errore di battitura nel tuo codice. Dovrebbe essere:

function load_my_script(){
    wp_register_script( 
        'my_script', 
        get_template_directory_uri() . '/js/myscript.js', 
        array( 'jquery' )
    );
    wp_enqueue_script( 'my_script' );
}
add_action('wp_enqueue_scripts', 'load_my_script');

La dipendenza da jQuery deve essere un array(), non solo una stringa. Questo farà sì che il tuo script venga caricato dopo jQuery.

10 apr 2012 20:26:49
Commenti

... è necessario 'jquery' in wp_enqueue_script?

Dave Dave
10 apr 2012 20:41:16

Nella funzione wp_register_script, sì. Indica a WordPress che jQuery è necessario per l'esecuzione di questo script, quindi verrà caricato di conseguenza. In wp_enqueue_script non è necessario, perché WP conosce già le dipendenze dalla registrazione precedente.

swissspidy swissspidy
10 apr 2012 20:56:01

Esatto. Scusa, ho dimenticato di rimuovere jQuery dalla chiamata wp_enqueue_script(). Non è necessario lì.

EAMann EAMann
10 apr 2012 20:59:44
2

get_template_directory_uri() restituisce la directory del tema, ma non è ciò che desideri se stai utilizzando un Child Theme.

get_stylesheet_directory_uri() restituirà la directory del tuo "tema corrente", quindi in entrambi i casi, è più sicuro da utilizzare.

18 mar 2021 09:06:17
Commenti

Vero, ma la domanda riguarda le dipendenze degli script, no?

Rup Rup
18 mar 2021 15:20:49

Sì. Ma se qualcuno sta usando un Child Theme, nessuna di queste risposte funzionerà. Quindi questo aiuta.

aarontgrogg aarontgrogg
19 mar 2021 16:37:14