par
Ryle » 01 avr. 2015, 16:31
Hello !
En fait, il suffit que dans ta boucle for(), la valeur de fin soit 10 au lieu de $total_pages. Ceci étant, ta pagination ne proposerait alors que les 10 premières pages, quelque soit la page que tu consultes. Il serait donc plus sympa de ne pas boucler de 1 à 10, mais de $i = $start_from, tant que $i <= $start_from+10
Si tu commences à la page 0, tu auras les 10 premières pages. Si tu ouvres la 10e page, tu auras alors les pages 10 à 20.
Il faudra alors ajuster pour pouvoir revenir de la page 10 vers les pages précédentes et ne pas proposer les pages 150 à 160 si tu n'as que 154 pages

Par exemple :
- partir de $i = max(1, $start_from - 5) // afficher les 5 pages précédentes si elles existent)
- tant que $i <= min ($total_pages, $start_from + 10) // afficher les 10 pages suivantes si elles existent
Hello !
En fait, il suffit que dans ta boucle for(), la valeur de fin soit 10 au lieu de $total_pages. Ceci étant, ta pagination ne proposerait alors que les 10 premières pages, quelque soit la page que tu consultes. Il serait donc plus sympa de ne pas boucler de 1 à 10, mais de $i = $start_from, tant que $i <= $start_from+10
Si tu commences à la page 0, tu auras les 10 premières pages. Si tu ouvres la 10e page, tu auras alors les pages 10 à 20.
Il faudra alors ajuster pour pouvoir revenir de la page 10 vers les pages précédentes et ne pas proposer les pages 150 à 160 si tu n'as que 154 pages :)
Par exemple :
- partir de $i = max(1, $start_from - 5) // afficher les 5 pages précédentes si elles existent)
- tant que $i <= min ($total_pages, $start_from + 10) // afficher les 10 pages suivantes si elles existent