web-dev-qa-db-fra.com

Comment puis-je mettre en file d'attente un JavaScript dans mon pied de page via le fichier functions.php?

Bon, je connais bien le moyen de mettre correctement une feuille de style ou un code JavaScript dans l'en-tête WordPress via le fichier functions.php.

Récemment, cependant, je suis tombé sur une situation qui me laisse perplexe. Je veux installer ce script sur mon site WordPress: personnaliser-Twitter-1.1 .

Premièrement, je dois intégrer le code JavaScript Twitter dans mon pied de page, qui est ce code ici:

<script>
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];
    if(!d.getElementById(id)){js=d.createElement(s);js.id=id;
    js.src="//platform.Twitter.com/widgets.js";
    fjs.parentNode.insertBefore(js,fjs);}
}(document,"script","Twitter-wjs");
</script>

Ensuite, je dois également intégrer ce code JavaScript dans le pied de page:

<script src="customize-Twitter-1.1.min.js" type="text/javascript"></script>

Dernier point mais non le moindre, je dois intégrer ce code également ...

<script>
 var options = {
    "url": "/my-styles.css"
 };
 CustomizeTwitterWidget(options);
</script>

Jusqu'ici, le code que j'ai ajouté à mon fichier functions.php ressemble à ceci ...

wp_register_script( 'Twitter-customize', get_template_directory_uri() . '/js/customize-Twitter-1.1.min.js', array(), '1.0', true );

wp_enqueue_script( 'Twitter-customize' );

Ce code met correctement en file d'attente l'un des fichiers JavaScript. Je ne sais pas comment ajouter les autres et, en plus, les ajouter également au pied de page.

Toute entrée est appréciée, merci les gars!

1
DigitalSky

Commencez par créer un fichier JS statique avec ces codes en ligne.

!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];
    if(!d.getElementById(id)){js=d.createElement(s);js.id=id;
    js.src="//platform.Twitter.com/widgets.js";
    fjs.parentNode.insertBefore(js,fjs);}
}(document,"script","Twitter-wjs");

 var options = {
    "url": "/my-styles.css"
 };
 CustomizeTwitterWidget(options);

Mettez-le ensuite en bas de page en tant que personne à charge du script Twitter-customize que vous avez déjà mis en file d'attente.

function my_footer_enqueue() {

    wp_register_script( 'Twitter-customize', get_template_directory_uri() . '/js/customize-Twitter-1.1.min.js', array(), '1.0', true );
    wp_enqueue_script( 'Twitter-customize' );
    wp_enqueue_script( 'Twitter-customize-custom', get_template_directory_uri() . '/js/Twitter-customize-custom.min.js', array('Twitter-customize'), '1.0', true );
}
add_action( 'wp_enqueue_scripts', 'my_footer_enqueue' );

C'est tout. Manière propre et facile.

0
Abhik

Le code suivant peut être utilisé pour ajouter un script dans le pied de page MAIS je dois mentionner ici que ce n’est pas la méthode recommandée dans WordPress .

add_action( 'wp_footer', 'custom_footer_script', 100 );
function custom_footer_script(){
  ?>
  <script>
  // your script
  </script>
  <?php
}

Alternative :

Vous devez essayer de créer un fichier de script séparé en ajoutant votre code personnalisé et en mettant en file d'attente de manière WP?

2
Nilambar
add_action( 'wp_enqueue_scripts', 'load_scripts ');

function load_scripts() {

    if ( !is_admin() ) {

        wp_enqueue_script( 'jquery' );

        wp_register_script( 'Twitter-customize', get_bloginfo( 'template_directory' ) .'/js/customize-Twitter-1.1.min.js', array( 'jquery' ), '1.0', true );
        wp_enqueue_script( 'Twitter-customize' );

    }
}
0
Gazi