web-dev-qa-db-fra.com

Essayer de récupérer post meta

J'ai créé une boîte à méta qui permet aux utilisateurs d'ajouter un nom/identifiant supplémentaire à leur message. D'après ce que je peux dire, l'ajout des métadonnées est correct, car lorsque je modifie un message qui porte un nom/ID personnalisé, il apparaît dans le champ de saisie par défaut, comme il se doit.

Mon problème est donc que j'essaye d'extraire l'ID/nom personnalisé et de l'utiliser comme étiquette d'identification supplémentaire dans le code. Bien qu'il ne récupère rien. Lorsque j'utilise le code dans mon thème et que je vérifie le code HTML sur la page, l'ID indique ID = "". Donc, pour une raison quelconque, cela ne tire rien. Quelqu'un peut-il voir un problème?

<?php $post_id = get_the_ID(); ?>
    <?php $value = get_post_meta($post_id, 'newtheme_section_id'); ?>
    <id="<?php $value; ?>">

Si je remplace get_the_ID () par the_ID (), une valeur est renvoyée, mais il s'agit de l'ID de publication au lieu de l'ID personnalisé que l'utilisateur a entré dans le champ.

EDIT: J'ai été capable de comprendre en faisant écho à la fonction au lieu de la stocker dans une variable, avec la suggestion de Mannys. Voici le code mis à jour.

<?php $post_id = get_the_ID(); ?>
<id="<?php echo esc_attr( get_post_meta($post_id, 'newtheme_section_id', true) ); ?>">
1
user1632018

Assurez-vous d'inclure le troisième argument dans get_post_meta, un booléen qui détermine s'il renvoie ou non un seul élément ou un tableau d'éléments. La valeur par défaut est false, qui est un tableau. Définissez-le donc sur true:

  <?php $value = get_post_meta ($post_id, 'newtheme_section_id', true ); ?>
0
Manny Fleurmond