web-dev-qa-db-fra.com

Le hook wp_enqueue_scripts ne fonctionne pas du tout, pas de plugin, ni du template, ni pour le front-end, ni pour les pages d'administration!

J'ai tout essayé et mon hook d'action wp_enqueue_scripts ne fonctionne pas! Qu'est-ce qui peut l'empêcher de fonctionner? Ceci est mon code à l'intérieur du plugin. Le plugin est activé:

function wpb_adding_scripts() {
    error_log("try 9");
}

add_action ('wp_enqueue_scripts', 'wpb_adding_scripts');
2

La fonction wp_enqueue_scripts est raccordée pour s'exécuter sur l'action wp_head , qui est déclenchée par la fonction wp_head() .

Cette fonction doit être placée dans la balise <head> du balisage de votre thème.

Si nous nous référons au fichier de base default-filters.php , nous pouvons voir les nombreuses fonctions qui dépendent de wp_head pour la sortie.

3
Milo

La bonne façon de mettre en file d'attente vos scripts est la suivante:

function my_scripts(){
    wp_enqueue_script ('my-js','YOUR JS URL HERE');
    wp_enqueue_style ('my-style','YOUR CSS URL HERE');
}
add_action('wp_enqueue_scripts','my_scripts');

Vous utilisez le hook qui se déclenche lors de la mise en file d'attente des scripts, mais rien dans la file d'attente. Examinez le Codex pour constater la différence entre wp_enqueue_script() et wp_enqueue_scripts() .

En outre, le cinquième argument de wp_enqueue_script() vous permet de mettre votre script en file d'attente dans le pied de page. Si vous avez un problème avec votre crochet wp_head(), essayez le pied de page:

wp_enqueue_script ('my-js' , 'YOUR JS URL HERE' , '' , '' , true);

Cela mettra votre fichier js en file d'attente dans le pied de page, ce qui est requis lorsque vous avez besoin que le DOM soit prêt pour le traitement du fichier js.

1
Jack Johansson