web-dev-qa-db-fra.com

Comment obtenir les valeurs de taxonomie d'un type d'article personnalisé

Je suis en train de créer un nouveau modèle qui obtiendra tout le contenu de type message personnalisé (études de cas), y compris les valeurs de taxonomies qui lui sont associées.

Jusqu'à présent, j'ai obtenu ce qui suit: 

<section>
<h1><?php _e( 'posts', 'casestudies' ); ?></h1>
<?php get_template_part('loop'); ?>
<?php
$args = array('post_type' => 'casestudies', 'posts_per_page' => 3);
$query = new WP_Query($args);
while($query -> have_posts()) : $query -> the_post();
?>
<h2><?php the_title(); ?></h2>
<p>Meta: <?php the_meta(); ?></p>
<p>Excerpt: <?php the_excerpt(); ?></p>
<p>what_to_put_here_to_get_taxonomies_values????</p>
<?php endwhile; ?>

<?php get_template_part('pagination'); ?>
</section>

Comment puis-je obtenir la taxonomie de celui-ci? J'ai essayé plusieurs choses mais toutes semblaient échouer et devenaient de plus en plus confuses.

7
user2091936

Vérifiez cette fonction:wp_get_post_terms ()

En supposant que votre type de message personnalisé Étude de cas prenne en charge deux taxonomies nommées pays et sujet, vous pouvez essayer quelque chose comme ceci:

<?php $terms = wp_get_post_terms( $query->post->ID, array( 'country', 'subject' ) ); ?>
<?php foreach ( $terms as $term ) : ?>
<p><?php echo $term->taxonomy; ?>: <?php echo $term->name; ?></p>
<?php endforeach; ?>

Votre sortie serait quelque chose comme:

Country: United Kingdom
Subject: Biology
Subject: Chemistry
Subject: Neurology
7
MikO

suppose: j’enregistre une taxonomie avec le type de message personnalisé publication_category .

Sur votre modèle de type de message personnalisé, écrivez:

$terms = get_the_terms( $post->ID, 'publication_category' );
if ($terms) {
    foreach($terms as $term) {
      echo $term->name;
    } 
}
3
Nurealam Sabbir

Juste au cas où cela pourrait aider quelqu'un, j'ai utilisé la fonction "the_taxonomies ()" dans une boucle d'un type de message personnalisé. 

        <?php

        while ( have_posts() ) : the_post();    
          $custom_post = get_post_meta( get_the_ID() );       
          //
        ?>

        //html
        //and stuff

        <?php the_taxonomies(); ?>

        <?php
          endwhile;
        ?>


 the result was:

   Taxonomy-name: {Taxonomy-term}. <-- as a link
0
felipe

Avez-vous essayé d'utiliser <?php get_taxonomies() ?>?

Si vous recherchez des taxonomies spécifiques qui fonctionnent avec des arguments optionnels, vous pouvez les utiliser pour contrôler le résultat. Voir la documentation ici: http://codex.wordpress.org/Function_Reference/get_taxonomies

0
Ollo