Existe-t-il un widget permettant à WordPress d'afficher les messages d'une catégorie avec une vignette et une description du dernier message? WIDGET LIKE: Top section de nouvelles de WWW.GOAL.com.
Je ne connais pas de widgets ou de plugins qui le font par défaut. Pour créer cela dans votre thème, vous devez écrire plusieurs boucles de requête qui passent par chaque catégorie, puis interroger les dernières publications de chacune avec un compteur afin que la publication principale puisse être stylée différemment.
Exemple rapide.
$cats = get_categories();
foreach ( $cats as $cat ) { //Loop through all the categories
$count = 0;
$args = array(
'cat' => $cat->term_id, //uses the current category in the loop
'posts_per_page' => 4,
'no_found_rows' => true, //Performance optimizes the query
'update_meta_cache' => false, //We don't need post_meta
);
echo '<div class="aside-'. $cat->slug .'">'. $cat->name .'</div>';
$cat_q = new WP_Query( $args );
while( $cat_q->have_posts() ) : $cat_q->the_post();
$count++
if( $count == 1 ) { ?> //Sets the output for the top post
<div id="post-<?php the_ID(); ?>" <?php post_class('feature'); ?>>
<fig><?php the_post_thumbnail(); ?></fig>
<h3 class="post-title feature><a href="<?php the_permalink(); ?>><?php the_title(); ?></a></h3>
<p><?php the_excerpt(); ?></p>
</div>
<div class="right-side">
<ul class="post-list">
<?php } else { ?>
<li><a href="<?php the_permalink(); ?><?php the_title(); ?></a></li>
<?php }
endwhile; ?>
</ul>
</div><!-- /end .right-side -->
</div><!-- /end .aside-<?php echo $cat->slug; ?> -->
<?php } //Ends our category foreach loop
Cela fera l'affaire,
<?php $postCount = 0; ?>
<h1 class="section_title">Category-1</h1>
<?php query_posts('cat=1&showposts=4'); ?>
<?php while (have_posts()) : the_post(); ?>
<a href="<?php the_permalink() ?>"><?php the_title(); ?></a>
<?php if($postCount == 0) { the_excerpt(); }?>
<?php $postCount++; ?>
<?php endwhile; ?>
<?php $postCount = 0; ?>
<h1 class="section_title">Category-2</h1>
<?php query_posts('cat=2&showposts=4'); ?>
<?php while (have_posts()) : the_post(); ?>
<a href="<?php the_permalink() ?>"><?php the_title(); ?></a>
<?php if($postCount == 0) { the_excerpt(); }?>
<?php $postCount++; ?>
<?php endwhile; ?>
<?php $postCount = 0; ?>
<h1 class="section_title">Category-3</h1>
<?php query_posts('cat=3&showposts=4'); ?>
<?php while (have_posts()) : the_post(); ?>
<a href="<?php the_permalink() ?>"><?php the_title(); ?></a>
<?php if($postCount == 0) { the_excerpt(); }?>
<?php $postCount++; ?>
<?php endwhile; ?>
1
par l'ID de catégorie que vous souhaitez afficher4
affichera les 4 derniers articles, y compris le premier (article complet)if($postCount == 0)
a été utilisé pour déterminer le premier poste en boucle et afficher l'extrait