À propos de ce tutoriel
Nous avons vu comment lister les contenus à l'aide de la boucle WordPress sans forcément se préoccuper de la pagination. Il existe différentes méthodes qui permettent de créer une pagination mais la plus intéressante est la fonction paginate_links()
. Cette fonction n'offre pas forcément une tonne d'option en terme de personnalisation et vous aurez surement besoin de créer une fonction personnalisée pour vous adapter à la structure de votre template.
function montheme_pagination()
{
$pages = paginate_links(['type' => 'array']);
if ($pages === null) {
return;
}
echo '<nav aria-label="Pagination" class="my-4">';
echo '<ul class="pagination">';
foreach ($pages as $page) {
$active = strpos($page, 'current') !== false;
$class = 'page-item';
if ($active) {
$class .= ' active';
}
echo '<li class="' . $class . '">';
echo str_replace('page-numbers', 'page-link', $page);
echo '</li>';
}
echo '</ul>';
echo '</nav>';
}