Pour mettre en place le système de pagination, il faut ajouter à votre boucle le critère {pagination}
comme ici, par exemple :
<B_page>
<nav role="navigation" class="pagination">#PAGINATION</nav>
<ul>
<BOUCLE_page(ARTICLES) {par date} {pagination}>
<li>#TITRE</li>
</BOUCLE_page>
</ul>
</B_page>
Vous pouvez voir l’utilisation de la balise #PAGINATION
nécessaire dans le mécanisme de pagination. Si le site comporte 90 articles publiés, cette boucle affichera la liste des dix plus anciens articles, surplombée de liens conduisant vers la page qui affiche les dix suivants, les dix d’après, etc. Ces liens sont numérotés comme suit :
Le numéro à partir duquel les résultats sont affichés est passé dans l’url via un paramètre {debut_page=x}
portant le même nom (ici, « page ») que la boucle concernée. (Ce paramètre est exploitable dans une autre boucle via le critère classique {debut_page,10}
.)
A noter : le nombre total de liens affichés est limité ; des points de suspension permettent, le cas échéant, d’aller directement à la toute fin de la liste, ou de revenir au tout-début.
Changer le pas de la {pagination}
Le nombre standard de 10 éléments par page peut être modifié par un paramètre supplémentaire dans le critère.
Ainsi
<BOUCLE_page (ARTICLES) {pagination 5}>
#TITRE <br />
</BOUCLE_page>
retournera les titres de cinq articles à partir de debut_page.
Le paramètre en question peut lui-même être composé comme on le souhaite à partir d’autres balises, notamment #ENV{xx}
, ce qui permet de faire un affichage à la demande très complet.
Changer le nom de l’argument d’url
Un 3eme argument permet de changer le nom de l’argument d’url figurant dans les liens de pagination et qui sert à indiquer quelle page de quelle pagination est affichée.
Le nom de cette variable d’url est constituée par ’debut’ suivi du la valeur du 3eme argument s’il est présent, ou du nom de la boucle sinon :
- debut_page
dans l’exemple précédent ;
- mais avec {pagination 5, _des_exemples}
ce serait debut_des_exemples
.