Jak ustawić ładowanie skryptu po jquery?

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

myscript.js ładuje się przed jquery, dlaczego? I jak sprawić, by ładował się PO jquery?

Dzięki.

Dave
źródło

Odpowiedzi:

14

Masz literówkę w swoim kodzie. To powinno być:

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

Zależność jQuery musi być array()ciągiem, a nie tylko ciągiem. To zmusi twój skrypt do załadowania po jQuery.

EAMann
źródło
... czy w wp_enqueue_script potrzebne jest „jquery”?
Dave
W wp_register_scriptfunkcji tak. Informuje WordPress, że jQuery jest potrzebny do uruchomienia tego skryptu, więc zostanie odpowiednio załadowany. W wp_enqueue_scriptto nie jest konieczne, ponieważ już wie WP zależności od wcześniej.
swissspidy
Dokładnie. Przepraszamy, zapomniałem usunąć jQuery z wp_enqueue_script()połączenia. Nie jest tam potrzebny.
EAMann