web-dev-qa-db-fra.com

get_terms of post-> id

J'ai besoin d'un moyen d'utiliser get_terms et de ne récupérer que les taxonomies de la page actuelle. Exemple http://sitename.com/genre/hip_hop ne prendrait que les taxonomies auxquelles est associé le genre hip hop.

wp_get_object_terms fonctionne presque pour moi mais ne fonctionne pas comme le fait get_terms.

Voici ce que j'ai en ce moment

<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post();
$cam_brands = get_the_terms( $post->ID, 'sub_genre' );?>
<?php foreach( $cam_brands as $brand ) : ?>
<h3 class="genre-title"> <?php echo $brand->name; ?> </h3>

<?php $wpq = array( 'post_type' => 'track', 'taxonomy' => 'sub_genre', 'term' => $brand->slug, 'post_status' => 'publish','posts_per_page' => -1, 'caller_get_posts'=> 1 );
$brand_posts = new WP_Query ($wpq);?>
<ul>
<?php foreach( $brand_posts->posts as $post ) : ?>
<li> <?php echo $post->post_title; ?> <a class="sc-player" href="<?php echo get('soundcloud_link'); ?>">track</a> </li>
<?php endforeach ?>
</ul>
<?php endforeach ?>
<?php endwhile; ?>
<?php endif; ?>
2
Khey

Je pense que ce que vous recherchez, c'est get_the_terms , pour lequel vous pouvez spécifier un identifiant de publication et une taxonomie afin de récupérer les termes qui y sont attachés.

4
Jared

Je pense que vous voudrez peut-être envisager de changer votre foreach externe en une déclaration for régulière. J'ai rencontré des problèmes avec le nombre d'itérations lors de l'utilisation d'une foreach dans une foreach (instructions foreach imbriquées). Cela pourrait affecter la sortie de votre code. PHP a documenté ceci sur leur site web.

0
Robert B. Cummings