J'utilise wp_register_script
et wp_enqueue_script
dans functions.php
est comme ceci:
function add_wp_scripts() {
wp_register_script(
'myscript',
get_template_directory_uri() . '/jsfile.js',
array(),
null,
true
);
wp_enqueue_script('myscript');
}
add_action( 'wp_enqueue_scripts', 'add_wp_scripts' );
Cela fonctionne bien. Le jsfile.js
contient seulement deux données statiques codées en dur qui ne changent pas souvent.
Maintenant, je dois évaluer s’il est possible d’obtenir des données dynamiques de la base de données et de les mettre dans jsfile.js
? - Depuis, je n'ai aucune expérience de JavaScript et j'aimerais savoir s'il est possible d'obtenir des données dynamiques dans jsfile.js
? Si oui, comment pourrais-je m'en rendre compte et existe-t-il des restrictions de WordPress lui-même?
Vous recherchez la fonction wp_localize_script()
. Cette fonction vous permet d’ajouter des données du serveur à votre javascript.
Cependant, cela ne changera pas le contenu de jsfile.js
. Au lieu de cela, il ajoutera une variable globale dans le pied de page de votre thème. La modification du contenu d'un fichier JS avant de le transmettre au navigateur est une technique avancée qui nécessite la compilation/mise en mémoire tampon. La fonction ci-dessus devrait suffire à la plupart des utilisateurs.
Tout ce dont vous avez besoin pour utiliser cette fonction est inclus dans le lien fourni.