J'ai quelques articles sur mon site avec un champ personnalisé "Nom". Maintenant, dans le cas où la publication a "Nom" défini, je veux générer ce code:
<script type='text/javascript'>
var FG_DONATE_BUTTON_PARAMS = { attribution: 'honor', attribution_name: Name}
</script>
où Nom après nom_attribution fait référence à la valeur du champ personnalisé. À des fins de test, j'ai utilisé ce code dans l'en-tête
$nameAttribute= get_post_meta($post->ID, 'Name', true);
printf('<script type=\'text/javascript\'>
var FG_DONATE_BUTTON_PARAMS = {
attribution: \'honor\',
attribution_name: \'' . $nameAttribute .'\'
} </script>');
Mais j'ai deux problèmes. Premièrement, la valeur de $ nameAttribute n'est pas transmise, et deuxièmement, c'est moche :) Je pense que je peux gérer le problème de la valeur, mais je ne sais pas quelle serait la "bonne" manière de générer cela.
Vous voudrez peut-être examiner cette question . Dans cette question, l'URL admin-ajax est transmise, mais il peut s'agir de n'importe quelle variable (ou tableau de variables), comme par exemple $nameAttribute
.
Par exemple, vous appelez
wp_localize_script('my_js_file_handle','my_js_object',array('attribute'=>$nameAttribute))`
puis dans votre fichier js, la variable serait accessible à partir de my_js_object.attribute.
(Vous devez cependant mettre en file d'attente le fichier javascript!)