Ich benutze jetzt WordPress 3.1.4. Ich bin verwirrt mit wo (welchen Haken) ich benutze:
Fragen:
init
?admin_print_styles-{xxx}
?es sollte rechtzeitig - früher sein, als das Skript/der Stil für die Ausgabe auf der Seite verfügbar ist, da es sonst zu spät ist.
es sollte bedingt - sein, andernfalls laden Sie Dinge, die Sie nicht benötigen, und verursachen Leistungs- und Funktionsprobleme. Dazu müssen Sie die WP -Umgebung zu einem späten Zeitpunkt laden.
register - dies erklärt WP Details zu Skript/Stil und veranlasst es, diese Informationen zu speichern;
enqueue - (häufig zusammen mit register in einem wp_enqueue_*()
-Aufruf zusammengefasst) - Weist WP an, der Warteschlange Skripte/Stile entsprechend ihren Einstellungen (Abhängigkeiten, Laden der Kopf-/Fußzeile) hinzuzufügen.
print - dies geschieht, wenn WP die Warteschlange verarbeitet, versucht, etwas Spezielles für sich selbst zu laden oder wenn Sie dies explizit mit der Funktion wp_print_*()
tun.
wp_head()
wp_head
(1) wp_enqueue_scripts()
wp_enqueue_scripts
"das ist was du brauchst
(8) wp_print_styles()
(9) wp_print_head_scripts()
wp_footer()
wp_footer
wp_print_footer_scripts()
Es geht viel tiefer, aber das ist einfach und gut genug für wichtige Punkte:
wp_enqueue_scripts
ist am besten geeignet, um Skripte und Stile im Front-End zu registrieren und in die Warteschlange zu stellen und genau dafür gibt es ihn;
init
hat nichts damit zu tun, es wird funktionieren, aber - die frühere Codex-Empfehlung, nur zu verwenden, war falsch ;
sie können jederzeit vor dem Aufruf von wp_print_footer_scripts()
keine Skripte (keine Stile) für die Fußzeile in die Warteschlange stellen.
wp_print_*
Hooks sind NICHT geeignet für register/queue , sie sind Punkte im Code, wenn die Ausgabe bereits erfolgt. Sie eignen sich für die manuelle/benutzerdefinierte Skript-/Stilausgabe.
Nun, die Funktionalität dort ist noch komplexer, ausgefeilter und verschachtelter.
für den Anfang benutze einfach admin_enqueue_scripts
hook (es wird übergeben$hook_suffix
global für bedingte Dinge ) für alles, es wird in den meisten Fällen gut funktionieren;
wenn Sie etwas Komplexes benötigen, durchsuchen Sie admin-header.php
und suchen Sie von dort aus nach geeigneten Hooks.
Es gibt einen bestimmten Hook namens login_enqueue_scripts
.