web-dev-qa-db-fra.com

Les fichiers jquery de WordPress ne sont pas mis en file d'attente

Je viens de mettre mon site Web sur le Web et j'ai remarqué que le menu ne fonctionnait pas vraiment. Rien ne se passe lorsque je clique dessus et lorsque j'inspecte l'élément, je ne vois pas les scripts. Tout fonctionne parfaitement dans le localhost cependant.

Voici mon function.php:

function scentology_scripts() {

        wp_enqueue_style( 'scentology-local-fonts', get_template_directory_uri() . '/fonts/raleway.css' );                   

        wp_enqueue_style( 'scentology-style-fontawesome', 'https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css' );

    wp_enqueue_style( 'scentology-style', get_stylesheet_uri() );

//        wp_enqueue_script( 'scentology-style', get_template_directory_uri() . '/js/scrollspy.js', array(jquery), '20151215', true );

        wp_enqueue_script( 'scentology-menu', get_template_directory_uri() . '/js/menu.js', array('jquery'));
        wp_enqueue_script( 'scentology-menu');

    wp_enqueue_script( 'scentology-navigation', get_template_directory_uri() . '/js/navigation.js', array(), '20151215', true );

    wp_enqueue_script( 'scentology-skip-link-focus-fix', get_template_directory_uri() . '/js/skip-link-focus-fix.js', array(), '20151215', true );

    if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
        wp_enqueue_script( 'comment-reply' );
    }
}
add_action( 'wp_enqueue_scripts', 'scentology_scripts' );

et mon code jQuery:

(function( $ ){      
   $(".burguer-nav").on("click", function() {      
        $("header nav ul").toggleClass("open"); 
    });     
})(jQuery);

Y at-il un autre moyen pour moi de charger les scripts?

1
deSousa

Je ne vois vraiment rien de mal à ce que j'ai fait précédemment. Mais dans tous les cas, j'ai changé le nom du fichier en navbar.js, puis mon functions.php ressemblait à ceci:

function scentology_scripts() {
    wp_enqueue_style( 'scentology-local-fonts', get_template_directory_uri() . '/fonts/raleway.css' );
    wp_enqueue_style( 'scentology-style-fontawesome', 'https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css' ); 

    wp_enqueue_style( 'scentology-style', get_stylesheet_uri() ); 

    wp_enqueue_script( 'scentology-menu', get_template_directory_uri() . '/js/navbar.js', array('jquery'), '20151215', true);

    wp_enqueue_script( 'scentology-navigation', get_template_directory_uri() . '/js/navigation.js', array('jquery'), '20151215', true );

//    wp_enqueue_script( 'scentology-style', get_template_directory_uri() . '/js/scrollspy.js', array(jquery), '20151215', true );

    wp_enqueue_script( 'scentology-skip-link-focus-fix', get_template_directory_uri() . '/js/skip-link-focus-fix.js', array('jquery'), '20151215', true );

    if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
     wp_enqueue_script( 'comment-reply' ); 
    }
}
add_action( 'wp_enqueue_scripts', 'scentology_scripts' );
1
deSousa
function scentology_scripts() {
    wp_enqueue_style( 'scentology-local-fonts', get_template_directory_uri() . '/fonts/raleway.css' );
    wp_enqueue_style( 'scentology-style-fontawesome', 'https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css' ); 

    wp_enqueue_style( 'scentology-style', get_stylesheet_uri() ); 

    wp_enqueue_script( 'scentology-menu', get_template_directory_uri() . '/js/menu.js', array('jquery'), '20151215', true);

    wp_enqueue_script( 'scentology-navigation', get_template_directory_uri() . '/js/navigation.js', array('jquery'), '20151215', true );

    wp_enqueue_script( 'scentology-skip-link-focus-fix', get_template_directory_uri() . '/js/skip-link-focus-fix.js', array('jquery'), '20151215', true );

    if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
     wp_enqueue_script( 'comment-reply' ); 
    }
}
add_action( 'wp_enqueue_scripts', 'scentology_scripts' );

Maintenant, ajoutez votre code jQuery personnalisé dans navigation.js (ou peut-être un fichier js différent).

1 Vous n'avez pas besoin de mettre en file d'attente les requêtes séparément.

2 Je suppose que vous avez confondu entre et wp_register_script et wp_enqueue_script . Lisez à propos de ces deux fonctions pour dissiper votre confusion.

0
Rituparna sonowal

il est à noter que vous voudrez peut-être activer la constante WP_DEBUG sur le fichier wp-config.php de votre emplacement local sur true.

De plus, get_template_dir_uri () fonctionnera aussi longtemps qu'il s'agira du thème parent et non d'un enfant, le thème enfant doit utiliser get_stylesheet_directory_uri () pour les scripts présents dans le dossier du thème enfant. Enfin, assurez-vous que vos sources sont là où elles sont censées se trouver et pour bonne pratique, supprimez toutes les sources http: https: from hard-coded telles que //maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome. min.css.

pour autant que je sache, vérifiez votre console et vérifiez comment les scripts sont imprimés dans le pied de page. il peut également y avoir des erreurs ou des conflits. On dirait que vous utilisez des parties de bootstrap, alors assurez-vous d'inclure tous les scripts nécessaires au bon fonctionnement de ces composants

0
Xavier Serrano