pskli

Ajout de champs custom fields à une taxonomie WordPress #1

Mar 24th, 2013
277
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <?php
  2. /**
  3.  * Template Name: Liste des séries d'articles
  4.  */
  5.  
  6. get_header(); ?>
  7.  
  8. <div id="primary" class="site-content">
  9.     <div id="content" role="main">
  10.         <div class="entry-content">
  11.  
  12.             <?php // Récupérer une liste des séries d'articles
  13.  
  14.             $series = get_terms('serie');
  15.  
  16.  
  17.             // Pour chaque série, quels sont les articles de la série
  18.             foreach ($series as $serie) {
  19.                 $posts_in_serie = get_posts(
  20.                     array(
  21.                         'orderby' => 'date',
  22.                         'order' => 'ASC',
  23.                         'tax_query' => array(
  24.                             array(
  25.                                 'taxonomy' => 'serie',
  26.                                 'field' => 'id',
  27.                                 'terms' => $serie->term_id
  28.                             )
  29.                         )
  30.                     )
  31.                 );
  32.  
  33.                 // Afficher les informations de notre série: titre, description, image, difficulté
  34.                 echo '<h2>' . $serie->name . '</h2>';
  35.  
  36.                 // Afficher l'image de la série
  37.                 $serie_image = get_tax_meta($serie->term_id, 'image');
  38.                 $serie_image_src = $serie_image['src'];
  39.  
  40.                 echo '<img src="' . $serie_image_src . '" class="alignleft" />';
  41.  
  42.                 if ($serie->description != '') {
  43.                     echo '<p>' . $serie->description . '</p>';
  44.                 }
  45.  
  46.                 // Afficher la difficulté de cette série
  47.                 echo '<strong>Difficulté : </strong>' . get_tax_meta($serie->term_id, 'difficulty');
  48.  
  49.                 echo '<h3>' . count($posts_in_serie) . ' articles dans cette série :</h3>';
  50.  
  51.                 // Afficher les informations de nos articles
  52.  
  53.                 echo '<ol>';
  54.                 foreach ($posts_in_serie as $post_in_serie) {
  55.                     echo '<li><a href="' . get_permalink($post_in_serie->ID) . '">' . $post_in_serie->post_title . '</a></li>';
  56.                 }
  57.                 echo '</ol>';
  58.  
  59.                 echo '<hr>';
  60.  
  61.             } ?>
  62.  
  63.         </div>
  64.     </div><!-- #content -->
  65. </div><!-- #primary -->
  66.  
  67. <?php get_sidebar(); ?>
  68. <?php get_footer(); ?>
RAW Paste Data