2013-06-19 1 views
0

J'essaie d'afficher un certain nombre de termes de taxonomie post-personnalisés, mais chacun dans leur propre élément de liste spécifique.Envelopper chaque terme de taxonomie post-personnalisé dans un li - en utilisant une boucle foreach

J'ai un site qui parle de garages. (en développement sur localhost, donc pas encore de lien).

J'ai un type de message personnalisé appelé Cars. Dans ce cas, j'ai une taxonomie post personnalisée avec la marque de la voiture «Ford» dans ce cas. Dans «Ford», vous trouverez une liste de termes post-taxonomie personnalisés pour toutes les voitures Ford de ce garage. 'GT', 'Sierra', 'Orion'. Au lieu de lister les termes: «GT», «Sierra», «Orion». Je veux montrer une image de la voiture dans une liste ul.

J'ai créé un sprite avec toutes les images et je veux faire une boucle sur celles-ci en réglant la position de l'arrière-plan pour chaque élément li.

Le premier lot de code ci-dessous affiche une liste de termes qui sont tous bons, mais pas ce que je veux. Tout en bas se trouve le code auquel j'ai essayé d'ajouter les éléments de la liste, mais en obtenant simplement un écran vide ...

Toute aide, très appréciée. Merci

<?php if (get_post_type() == cars) { ?> 
     <div class="entry-meta-custom"> 
      <?php 
      $terms = get_the_terms($post->ID, 'ford'); 

      if ($terms && ! is_wp_error($terms)) : 

       $draught_links = array(); 

      foreach ($terms as $term) { 
       $draught_links[] = $term->name; 
      } 

       $on_draught = join(", ", $draught_links); 
       ?> 

      <?php echo $on_draught; ?> 

     <?php endif; ?> 
    </div><!-- .entry-meta-custom --> 
<?php } ?> 

Et voici où j'ai essayé d'ajouter les éléments de la liste.

<?php if (get_post_type() == cars) { ?> 
     <div class="entry-meta-custom">  
      <?php 
      $terms = get_the_terms($post->ID, 'ford'); 

      if ($terms && ! is_wp_error($terms)) : 

       $draught_links = array(); 

      foreach ($terms as $term) { 

       if ($term->name == 'gt') { 
        $term->name = '<li class="gt">' . $term->name . '</li>'; 
       } 
       if ($term->name == 'sierra') { 
        $term->name = '<li class="sierra">' . $term->name . '</li>'; 
       } 
       if ($term->name == 'orion') { 
        $term->name = '<li class="orion">' . $term->name . '</li>'; 
       } 
       $draught_links[] = $term->name; 
      } 

      $on_draught = join(", ", $draught_links); 
      ?> 

      <?php echo '<ul>' . $on_draught . '</ul>; ?> 

     <?php endif; ?> 
    </div><!-- .entry-meta-custom --> 
<?php } ?> 

Répondre

0

Je l'ai élaboré. Vous trouverez ci-dessous le code de toute personne cherchant à remplacer les termes de la liste de taxonomie post personnalisée par des images individuelles liées au terme archive.

Source http://codex.wordpress.org/Function_Reference/get_term_link

<?php if (get_post_type() == cars) { ?> 
    <div class="entry-meta-custom">  
     <?php 

     $terms = get_terms('ford'); 

     echo '<ul>'; 

     foreach ($terms as $term) { 
      echo '<li class="'.$term->name.'"><a href="'.get_term_link($term->slug, 'ford').'"></a></li>'; 
     } 

     echo '</ul>'; ?> 

    </div><!-- .entry-meta-custom --> 
<?php } ?> 
Questions connexes