it-swarm.com.de

Wie stelle ich sicher, dass ein Plugin nach jQuery ein Skript lädt?

Mein Kunde hat eine Site, auf der die neueste Version von WordPress mit Thesis ausgeführt wird.

Derzeit wird jQuery als letztes zu ladendes Skript in die Fußzeile geladen. Ich bin nicht sicher, was jQuery zum Laden veranlasst - möglicherweise These oder etwas anderes.

Wir fügen ein Plugin hinzu, das ein Skript enthält, das geladen wird. Das Skript wird in die Fußzeile geladen. Aber es wird geladen, BEVOR jQuery, so dass es fehlschlägt.

Die Enqueue-Skriptzeile lautet wie folgt:

add_action('wp_enqueue_scripts', array($this, 'stb_enqueue_scripts'));

Ich habe es so bearbeitet:

$deps = array("jquery");
add_action('wp_enqueue_scripts', array($this, 'stb_enqueue_scripts', $deps));

Aber das hat das Problem nicht gelöst - tatsächlich wurde das Skript überhaupt nicht mehr geladen.

Wie kann ich sicherstellen, dass dieses Skript nach jQuery geladen wird?

Vielen Dank!!

1
dylanized

Mit der Funktion wp_enqueue_script oder wp_print_script können Sie Ihre JS-Datei nach dem Laden von jQuery laden. Verwendungshinweis -

<?php wp_enqueue_script( $handle, $src, $deps, $ver, $in_footer ); ?>

Das Argument $dep (Abhängigkeiten) sollte ein Array oder null oder leer sein und nicht so verwendet werden, wie Sie es in Ihrem Code getan haben. Sie wird mit der Funktion wp_enqueue_script oder wp_print_script aktiviert.

Ihre erste verwendete add_action Referenz ist gültig, aber die zweite ist ungültig.

Auf Ihrer stb_enqueue_scripts Funktion sollte es sein -

function stb_enqueue_scripts()
{
    // third argument is the dependencies, should be array or boolean false
    // fifth argument = boolean true if loading the script at footer
    wp_enqueue_script( 'script-name', 'script_url', array('jquery'), '', true );
}
7
Shazzad