Ich habe ein bisschen über dieses Thema gelesen, aber je mehr ich lese, desto verwirrter wird es.
Kann mir jemand kurz erklären, was genau der Unterschied zwischen wp_enqueue_scripts
, wp_register_scripts
und wp_print_scripts
ist?
Ich habe zum Beispiel den folgenden Code in meiner functions.php - und er funktioniert, aber ich verstehe nicht, warum ich wp_print_scripts
nicht für die Stylesheets verwenden kann, wohingegen der Code immer noch funktioniert, wenn ich wp_enqueue_scripts
für die Javascript-Dateien verwende:
add_action('wp_print_scripts', 'add_my_js');
function add_my_js(){
if(!is_admin()){
wp_enqueue_script('default', get_bloginfo('stylesheet_directory').'/js/default.js', array('jquery'));
}
}
add_action('wp_enqueue_scripts', 'add_my_stylesheet');
function add_my_stylesheet() {
wp_register_style('default', get_bloginfo( 'stylesheet_url'));
wp_enqueue_style( 'default');
}
wp_print_scripts
ist die Aktion, die ausgeführt wird, wenn Skripts in die Vorlage ausgegeben werden. wp_register_script
und wp_enqueue_script
sind Funktionen zum Registrieren/Einreihen von Skripten, die bei Ausführung von wp_print_scripts
ausgegeben werden sollen.
sie können keine Stile im Aktions-Hook wp_print_scripts
registrieren oder in eine Warteschlange einreihen, da Stile bereits im Hook wp_print_styles
ausgegeben wurden, der vor wp_print_scripts
ausgeführt wird.
beziehen Sie sich auf die Aktionsreferenz , um zu sehen, in welcher Reihenfolge die Dinge in einer Anfrage ausgeführt werden:
22. wp_head
23. wp_enqueue_scripts
24. wp_print_styles
25. wp_print_scripts