Pagination des articles sous WordPress

Quand vous souhaitez limiter l’affichage de vos articles par lot de 3, il faudra lancer une requête adaptée avant la boucle des articles, puis utiliser la fonction adéquate pour afficher les liens de pagination. Dans cet exemple, j’utilise la fonction the_posts_pagination().

Comme je n’ai trouvé aucun code complet, simple et fonctionnel, dans les autres recoins du Web, je propose le mien. Il peut s’agir ici du fichier index.php ou d’un autre modèle de page de votre thème WordPress :

<?php get_header() ?>
    <h1>Mes articles</h1>
	<?php
  	$args = array(   
                   'posts_per_page' => 3,
                   'paged' => get_query_var('paged'),
                   );
    query_posts($args);

	while (have_posts()) : the_post();
			?>
			<article>
			<a href="<?php the_permalink() ?>">
				<h2><?php the_title() ?></h2>
				<?php the_post_thumbnail('medium'); ?>
			</a>
			<?php the_excerpt() ?>
			<a href="<?php the_permalink() ?>">Lire</a>
			</article>
	<?php
	endwhile;
				
the_posts_pagination( array( 'mid_size' => 2 ) ); 

wp_reset_postdata();
get_footer(); ?>

On retrouve dans ce code les paramètres de la fonction query_posts() :

'posts_per_page' => 3

Affiche les articles par paquets de 3.

'paged' => get_query_var('paged')

Paramètre indispensable pour obtenir les liens de pagination corrects sur vos articles suivants, précédents, etc…

Puis enfin la fonction qui affiche les liens de pagination, à positionner après la boucle :

the_posts_pagination();

Voici le résultat :