Mon client a de nombreuses pages avec des éléments <script>
, y compris javascript.
<script src="myscriptforthispageonly.js"></script>
J'essaie de charger tous les scripts dans le pied de page avec wp_enqueue_script()
, mais je ne sais pas comment mettre en file d'attente un script depuis une page.
Encore une fois, cela se trouve dans une page Wordpress . Est-il possible de mettre en file d'attente un script externe à partir d'une page ou post ?
Si ce n'est pas possible, est-il possible de retarder le chargement du script jusqu'à ce que l'événement onload se déclenche?
Réponse générale: vous pouvez appeler wp_enqueue_script()
directement dans le modèle, à partir de WordPress 3.4 (IIRC).
Donc, si vous avez:
<script src="myscriptforthispageonly.js"></script>
Vous pouvez le remplacer par:
<?php wp_enqueue_script( 'this-page-script', get_template_directory_uri() . '/myscriptforthispageonly.js', array( 'jquery' ), null, true ); ?>
De ce commentaire:
C'est à partir d'une page. Comme dans une page Wordpress. Aucun modèle. Imaginez que vous écrivez une mise à jour de blog Wordpress, vous passez au HTML
La meilleure chose à faire serait de définir un shortcode que l'utilisateur mettrait dans le contenu du message, au lieu de placer un <script>
s'appelant directement dans le message contenu. Ensuite, dans votre rappel de code abrégé, vous pouvez appeler wp_enqueue_script()
.