[Résolu] conflit de scripts : comment charger un script sur une seule page ? (Créer un compte)

  • Statut : non résolu
10 sujets de 16 à 25 (sur un total de 25)
  • Auteur
    Messages
  • #901707
    Oric
    Membre
    Initié WordPress
    13 contributions

    dans le fichier functions.php de mon thème enfant

    #901708
    Guy
    Participant
    Maître WordPress
    14817 contributions

    Je ne suis pas certain que le numéro de page soit connu au moment de l’init.

    Par contre, je n’arrive pas trop à savoir où tu en es actuellement, peux tu mettre le dernier code (ou indiquer dans quel message il est placé).

    Pour ne le charger que dans une seule page, je mettrai la fonction et le test dans le template de la page.

    du genre:

    if (is_page(351)) {
    wp_enqueue-script(blabla1…
    wp_enqueue-script(blabla2…
    }

    #901709
    Oric
    Membre
    Initié WordPress
    13 contributions

    Pour l’instant j’ai ce code dans functions.php (j’ai réduit à un seul appel de script pour tester) :

    wp_register_script (  ‘jquery.min’, ‘http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js’,array(),false,true );
    if ( is_page( 351 ) ) {
    wp_enqueue_script ( ‘jquery.min’ );
    }

    Je vais tester votre proposition, je reviens vers vous pour vous dire ce que ça donne…

    #901710
    luciole135
    Participant
    Maître WordPress
    13714 contributions

    a mon avis, le plus simple est d’insérer ce code dans le fichier footer.php

    #901711
    Oric
    Membre
    Initié WordPress
    13 contributions

    … ET CA MARCHE !!! 👏

    Bon alors juste pour être sûre que j’ai fait les choses proprement, pouvez-vous me dire si j’ai intégré le code comme il faut ?
    Dans « functions.php » :

    wp_register_script (  ‘jquery.min’, ‘http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js’,array(),false,true );
    wp_register_script ( ‘jquery.accordion’, ‘http://localhost/monsite/wp-content/themes/swatch-child/js/jquery.accordion.js’, », »,true );
    wp_register_script ( ‘jquery.easing.1.3’, ‘http://localhost/monsite/wp-content/themes/swatch-child/js/jquery.easing.1.3.js’, », »,true );
    wp_register_script (‘function-accordion’, ‘http://localhost/monsite/wp-content/themes/swatch-child/js/function-accordion.js’, », »,true );

    Dans mon template « template-mapage.php » :

    get_header();
    if ( is_page( 351 ) ) {
    wp_enqueue_script ( ‘jquery.min’ );
    wp_enqueue_script ( ‘jquery.accordion’ );
    wp_enqueue_script ( ‘jquery.easing.1.3’ );
    wp_enqueue_script ( ‘function-accordion’ );
    }
    global $post;

    MERCI !🙂

    #901712
    Oric
    Membre
    Initié WordPress
    13 contributions
    luciole135 wrote:
    a mon avis, le plus simple est d’insérer ce code dans le fichier footer.php

    Ah nos messages ont dû se croiser, je n’avais pas vu cette possibilité-là…

    #901713
    luciole135
    Participant
    Maître WordPress
    13714 contributions

    Ben, les dépendances javascript je ne sais pas trop comment cela se gère, je laisse Guy vous répondre ! 😇

    #901714
    Oric
    Membre
    Initié WordPress
    13 contributions

    Bon en tout cas le problème est ✅ !!!
    Merci Guy et luciole135 pour votre aide et votre patience 🙂

    #901715
    Guy
    Participant
    Maître WordPress
    14817 contributions

    c’est OK, tu pourrais probablement ajouter les infos de dépendances entre scripts dans les wp_register_script pour n’appeler qu wp_enqueue_script ( ‘function-accordion’ ); mais ce n’est pas essentiel, c’est une facilité.

    #901716
    Oric
    Membre
    Initié WordPress
    13 contributions
    Guy wrote:
    c’est OK, tu pourrais probablement ajouter les infos de dépendances entre scripts dans les wp_register_script pour n’appeler qu wp_enqueue_script ( ‘function-accordion’ ); mais ce n’est pas essentiel, c’est une facilité.

    Euh… je crois que je vais effectivement laisser ça comme ça pour le moment, je me pencherai sur les dépendances quand j’aurai un peu plus d’aisance avec WP.
    Mais je garde ça dans un coin de la tête ! :D
    Merci d’avoir vérifié mon code.

10 sujets de 16 à 25 (sur un total de 25)
  • Le forum ‘Utilisation spécifique de WordPress’ est fermé à de nouveaux sujets et réponses.