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.
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
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;
}
}
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
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