web-dev-qa-db-fra.com

Pousser les métadonnées dans un tableau

Application de clés méta dans le résultat de la recherche

Comme je dois adopter une approche différente pour obtenir mes données en javascript à partir de wordpress, j'essaie d'appliquer (comme suite à mon message plus tôt aujourd'hui ( https://stackoverflow.com/ questions/34873986/javascript-for-each-custom-post-type-wordpress )) métadonnées à ma requête afin de pouvoir cracher la bonne information. C'est pratiquement plus difficile que je ne le pensais, car je le préfère dans une requête. Cela faisait un moment que je cherchais dans Google. J'avais espéré que je n'étais pas le seul à avoir ce problème. Je n'arrive pas à trouver une réponse pertinente à mon problème

Cas

Depuis que javascript et php ne m'intéressaient pas à Nice, je commençais à explorer une autre voie. Cela nécessite que je reçoive les résultats sur le coup droit avant que je pousse ceci en javascript via un json_encode. Jusqu’à présent, tout se passe bien, à l’exception d’une toute petite chose. Lorsque je pose ma question dans WP_query, je ne peux obtenir aucune métadonnée, ce dont j'ai vraiment besoin, car elle contient des informations cartographiques pour mes cartes Google. Alors, y a-t-il un moyen que je puisse interroger cela avant de faire passer cela?

<?php
$args = array(
        'post_type' => 'hotels',
 );

$query = new WP_Query( $args );
echo '<pre>';
print_r($query->posts);
echo '</pre>'
?>

<script type="text/javascript">
var post_info = <?php echo json_encode($query->posts); ?>;
<script>

Jusqu'à présent, j'ai réussi à vérifier ce qui a été donné, mais je suppose que je ne peux pas l'obtenir via wp_query. Existe-t-il un autre moyen d'obtenir les données dont j'ai besoin? Ou y a-t-il un moyen de pousser les métadonnées dans le tableau avec chaque message afin de pouvoir y accéder en Javascript?

1
Dorvalla

Vous devez parcourir vos publications et récupérer les métadonnées de chaque publication. Ajoutez-les à votre tableau et encodez-les au format JSON.

$posts = $query->get_posts();
foreach( $posts as &$thispost ) { // reference the current item

    $thispost->meta = get_post_meta( $thispost->ID );

}

Vous avez maintenant un objet WP_Post-, avec toutes les méta-publications disponibles à $post->meta['meta_key'][0]. Si plusieurs valeurs sont enregistrées pour une clé méta, vous pouvez parcourir le tableau ['meta_key']-Array.

1
fischi