WordPress : Afficher une liste des articles futurs
Pour un client j’ai dû récemment insérer dans un thème une liste d’articles futurs. Le but était d’en faire un agenda simple et concis en utilisant une date, un titre et un contenu limité.
Par défaut, la boucle de WordPress n’affiche pas les articles prévus pour une publication future. Ils servent à effectuer une publication automatique en fonction de la date renseignée. Il est cependant très simple de modifier la requête afin d’afficher ces articles pour tirer profit de la date de publication future, sans devoir utiliser d’autres champs (personnalisés) pour la renseigner.
Voici un exemple simple, demandant d’afficher les 4 futurs articles publiés (= ni brouillons, ni privés) appartenant à la catégorie « agenda » et classés chronologiquement.
Je vous laisse le plaisir de jouer avec le style CSS.
<?php
query_posts('orderby=date&rder=ASC&post_status=future,publish&category_name=agenda&showposts=4');
if (have_posts()) {
?>
<div id="agenda">
<h2>Agenda</h2>
<?php while (have_posts()) { the_post(); ?>
<div>
<?php the_time('d'); ?>
<br />
<span><?php the_time('M'); ?></span>
<div>
<a href="<?php the_permalink(); ?>"><?php the_excerpt_rss(); ?></a>
</div>
</div>
<?php } ?>
</div>
<?php } ?>
Pour la date, vous devez modifier la date de publication de l’article. Pour le contenu, on prend l’extrait de l’article dans son format RSS. Ça permet de ne conserver que le texte brut et d’en limiter automatiquement la hauteur avec un max-height
par exemple. On peut à loisir y ajouter un lien pointant vers l’article entier faisant une description complète de l’évènement.