Skripte in WordPress registrieren

Skripte müssen in WordPress nicht registriert (wp_register_script
) werden, bevor man sie einbindet. Sie sind auch direkt mit wp_enqueue_script
zu verwenden, mit denselben Parametern (ansonsten nur mit dem Handler). Allerdings liegt in der vorherigen Registrierung von Skripten eine Annehmlichkeit, die zum Beispiel zum Tragen kommt, wenn ein Skript nur unter bestimmten Bedingungen oder nicht auf allen Seiten da sein muss.
Ein in WordPress registriertes Skript steht auf Abruf zur Verfügung, wann und wo es gebraucht wird. Sobald ein anderes Skript seine Abhängigkeit von einem registrierten Skript anmeldet, sorgt WordPress dafür, dass das benötigte Skript vor jenem geladen wird, das seiner bedarf. Das funktioniert auch dann, wenn ein betroffenes Skript bereits im Headbereich der Seite lädt und der Parameter ein benötigtes Skript erst im Footer zu laden auf true
steht. Die im dritten Parameter anzuführende Abhängigkeit hat Vorrang.
wp_register_script( $handle, $src, $deps, $ver, $in_footer );
$deps
steht hierbei für die Abhänigkeit(en) (Array mit einem oder mehreren Skripthandlern).
Beispiel mit mehreren Abhängigkeiten
wp_register_script( 'jquery-plugin-eins', get_template_directory_uri() . '/js/jquery-plugin-eins.js', array('jquery'), false , true);
wp_register_script( 'jquery-plugin-zwei', get_template_directory_uri() . '/js/jquery-plugin-zwei.js', array('jquery-plugin-eins'), false , true);
wp_register_script( 'jquery-plugin-drei', get_template_directory_uri() . '/js/jquery-plugin-drei.js', array('jquery-plugin-zwei'), false , true);
wp_enqueue_script( 'jquery-plugin-vier', get_template_directory_uri() . '/js/jquery-plugin-vier.js', array('jquery-plugin-drei'), false , true);
Einzubinden ist nur das letzte Skript. Die anderen werden automatisch in richtiger Reihenfolge vorher geladen.
Vor der Suche nach Skripten, lohnt sich vielleicht ein Blick auf die in WordPress bereits registrierten Skripte, die ggf. mit wp_enqueue_script( $handle )
verfügbar sind.