get_terms pentru post->id

7 feb. 2012, 19:27:50
Vizualizări: 24.4K
Voturi: 2

Am nevoie de o modalitate de a folosi get_terms care să preia doar taxonomiile paginii curente. De exemplu http://sitename.com/genre/hip_hop ar prelua doar taxonomiile care au atașat și genul hip hop.

wp_get_object_terms funcționează aproape pentru mine dar nu face bucla așa cum o face get_terms.

Iată ce am în acest 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; ?>
0
Toate răspunsurile la întrebare 2
0

Cred că ceea ce cauți este funcția get_the_terms, unde poți specifica un ID de post și o taxonomie pentru a prelua termenii atașați acestuia.

7 feb. 2012 19:33:25
0
-1

Cred că ar trebui să iei în considerare schimbarea buclei exterioare foreach cu o instrucțiune for obișnuită. Am întâmpinat probleme cu numărul de iterații atunci când foloseam un foreach în interiorul altui foreach (instrucțiuni foreach imbricate). Acest lucru ar putea afecta rezultatul codului tău. PHP a documentat această problemă pe site-ul lor.

26 iul. 2012 13:25:46