On l’appelle boucle car elle va répéter ce qui se trouve à l’intérieur d’elle (entre la ligne while et celle du endwhile), autant de fois qu’il y a des posts correspondant à la requête, rendant disponible l’information de celui-ci.
Voici une boucle complète, à placer dans le fichier index.php :
<div id="corps">
<?php if(have_posts()) : ?><?php while(have_posts()) : the_post(); ?>
<div class="post" id="post-<?php the_ID(); ?>">
<h2><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h2>
<div class="post_content">
<?php the_content(); ?>
</div>
</div>
<?php endwhile; ?>
<!-- lien vers page precedente et suivante -->
<div class="navigation">
<?php posts_nav_link(' - ','page suivante','page précédente'); ?>
</div>
<?php endif; ?>
</div>Il s’agit de code php, chaque fois enserré dans un balisage <?php qui se termine par ?>, et qui signale "ici c’est du code php" et "ici il s’arrête, on continue en html. Il ne faut donc pas insérer du simple html directement à l’intérieur de ce balisage.
La première ligne contrôle la demande : si on a demandé la page 3 (page=3) et qu’elle n’existe pas, la boucle ne tournera pas, et le php entre les deux lignes ne sera pas pris en compte.
Si il y a réponse à la demande, la boucle commence. De manière invisible, le contenu des posts sera rendu disponible à chaque tour.
Infos supplémentaires dans le post
Cette ligne peut être placée sous le post ou sous le titre.
<p class="postmetadata">
<?php the_time('j F Y') ?> par <?php the_author() ?> |
Catégorie: <?php the_category(', ') ?> |
<?php comments_popup_link('Pas de commentaires', '1 Commentaire', '% Commentaires'); ?> <?php edit_post_link('Editer', ' | ', ''); ?>
</p>