Voulez-vous ajouter une pagination numérique dans votre thème WordPress ?
Par défaut, les thèmes WordPress ajoutent des liens « Suivant » et « Précédent » au bas des pages d’archives. Le problème est que ces liens ne sont pas très simples/simples d’utilisation. C’est pourquoi de nombreux blogs populaires utilisent la pagination numérique pour faciliter la navigation des internautes dans leurs pages d’archives.
Dans cet article, nous allons vous afficher comment ajouter une pagination numérique dans votre thème WordPress.
Pourquoi ajouter la pagination numérique dans votre thème WordPress ?
La plupart des thèmes disposent d’une page d’archive qui affiche une liste de publications. Au fur et à mesure que vous publiez des articles sur votre blog WordPress, votre page d’archives s’étendra sur plusieurs pages.
Les liens de pagination aident les internautes à se déplacer entre les pages d’archives et apparaissent généralement au bas de votre site WordPress.
Certains thèmes WordPress utilisent les liens « Publications plus anciennes » et « Publications plus récentes » pour la pagination. Cependant, cela permet uniquement à l’internaute d’avancer ou de reculer d’une page.
Il n’affiche pas non plus l’emplacement actuel de l’internaute dans les archives. Cela peut compliquer la navigation des internautes dans les archives de votre blog.
C’est là qu’intervient la pagination numérique.
Au lieu d’afficher des liens vers des pages plus anciennes et plus récentes, la pagination numérique affiche une série de chiffres qui permettent aux internautes de se rendre à une page spécifique des archives.
La pagination numérique peut également afficher le numéro de la page en cours à l’aide de surlignages ou de couleurs différentes, afin que l’internaute sache toujours exactement où il se trouve dans les archives.
Chez WPBeginner, nous utilisons la pagination numérique et mettons en évidence le numéro de la page actuelle en orange. Nous fournissons également des liens directs vers les 4 pages entourant la page actuelle de l’internaute.
Nous avons même créé un lien vers la dernière page de nos archives, afin que les internautes puissent rapidement et facilement consulter nos premières publications, comme vous pouvez le voir dans l’image suivante.
D’après notre expérience, ce type de pagination numérique facilite la navigation sur votre site par rapport aux liens par défaut « Publication plus ancienne » et « Publication plus récente ».
Si votre thème WordPress dispose d’une pagination » plus ancien » et » plus récent « , nous vous recommandons toujours de la remplacer par une pagination numérique.
Dans ce guide, nous allons couvrir deux façons différentes d’ajouter une pagination numérique dans votre thème WordPress. Si vous préférez passer directement à une méthode particulière, alors vous pouvez utiliser les liens ci-dessous.
- Méthode 1. Comment ajouter une pagination numérique dans WordPress en utilisant WP-PageNavi
- Méthode 2. Comment ajouter manuellement une pagination numérique dans votre thème WordPress
Méthode 1. Comment ajouter une pagination numérique dans WordPress en utilisant WP-PageNavi
La manière la plus simple d’ajouter une pagination numérique dans WordPress est d’utiliser l’extension WP-PageNavi.
Pour utiliser cette extension, vous devrez toujours apporter quelques modifications au code de votre thème, mais c’est beaucoup plus facile que la méthode du code complet car WP-PageNavi vous donne un contrôle complet sur la pagination de votre site.
La première chose à faire est d’installer et d’activer l’extension WP-PageNavi. Pour plus de détails, veuillez consulter notre guide étape par étape sur l’installation d’une extension WordPress.
Après avoir activé l’extension, allez dans Réglages » PageNavi pour configurer les paramètres de l’extension.
Ici, vous pouvez remplacer le texte de pagination par défaut par votre propre texte. Par exemple, vous pouvez modifier le texte que votre site utilise pour ses liens « Première page » et « Dernière page ».
Vous pouvez également personnaliser les liens de pagination numérique.
Dans la section « Nombre de pages à afficher », vous pouvez choisir le nombre de pages que l’extension affichera dans la section de pagination de votre site.
Ce paramètre est défini à 5 par défaut, ce qui signifie que WP-PageNavi affichera les liens directs vers 5 pages.
Comme vous pouvez le voir dans la capture d’écran ci-dessous, si vous êtes sur la page 4, vous verrez des liens vers les pages 2, 3, 4, 5 et 6.
Vous pouvez vouloir afficher plus ou moins de pages. Pour effectuer cette modification, il vous suffit de saisir le nouveau nombre dans le champ « Nombre de pages à afficher ».
Par défaut, l’extension affiche plusieurs numéros plus importants. Cela permet aux internautes d’avancer de plusieurs pages, en un seul clic.
Par défaut, l’extension affiche trois grands nombres qui augmentent de 10 à chaque fois. Par exemple, 10, 20 et 30.
Vous souhaitez utiliser un autre intervalle, par exemple 5 ou 20 ? Il vous suffit alors de saisir le nouvel intervalle dans le champ numérique « Afficher les numéros de page plus grands en multiples de ».
Chaque site WordPress est différent, c’est donc une bonne idée d’essayer différents Réglages pour voir quels réglages de pagination fonctionnent le mieux pour vous.
Si vous avez apporté des modifications aux Réglages de WP-PageNavi, n’oubliez pas de défiler jusqu’au bas de la page et de cliquer sur le bouton Enregistrer les modifications.
Ensuite, vous devez ajouter une marqueur de modèle dans votre thème WordPress. Pour ce faire, nous vous recommandons de créer un thème enfant, puis de modifier le code du thème enfant.
En créant un thème enfant, vous pouvez toujours mettre à jour votre thème WordPress en toute sécurité sans perdre votre pagination numérique personnalisée. Pour en savoir plus, consultez notre guide étape par étape sur la création d’un thème enfant WordPress.
Aucun des thèmes que vous choisissez de modifier, qu’il s’agisse d’un thème parent ou d’un thème enfant, n’est dépourvu d’un client FTP. Si c’est la première fois que vous utilisez le FTP, vous pouvez consulter notre guide complet sur la façon de se connecter à votre site à l’aide du FTP.
Lorsque vous êtes connecté à votre compte d’hébergeur WordPress via FTP, vous êtes prêt à modifier le code de votre thème WordPress.
Ces étapes varient en fonction de votre thème WordPress. Cependant, vous devrez généralement modifier le code de votre fichier index.php ou archive.php, ainsi que tout autre fichier de modèle d’archive de votre thème WordPress.
Il suffit d’ouvrir ces fichiers et de rechercher les identifiants previous_posts_link et next_posts_link.
Si vous trouvez ces identifications, remplacez-les par l’extrait de code suivant :
<?php wp_pagenavi(); ?>
Certains thèmes peuvent ne pas avoir d’identifiant previous_posts_link ou next_posts_link.
Si vous ne trouvez pas ces identifiants dans votre thème, cherchez plutôt the_posts_navigation. Par exemple, vous trouverez ce qui suit dans le fichier archive.php du thème Twenty Twenty-One :
<?php /*twenty_twenty_one_the_posts_navigation();*/
Vous pouvez alors remplacer cette ligne par l’extrait de code suivant :
<?php wp_pagenavi(); ?>
Après avoir effectué ces modifications, enregistrez puis fermez tous les fichiers ouverts du thème WordPress.
Maintenant, si vous visitez votre page d’archive WordPress, vous devriez voir votre nouvelle pagination numérique en direct sur votre site.
À ce stade, vous pouvez modifier la couleur et le style de la pagination numérique, afin qu’elle s’intègre mieux à votre thème ou à la marque de votre site.
Vous pouvez le faire en modifiant le code de l’extension.
Cependant, nous recommandons de coller le code de WP-PageNavi dans le fichier style.css de votre thème, puis d’effectuer vos modifications à l’intérieur du fichier du thème. Ainsi, vous ne perdrez pas vos personnalisations lorsque vous mettrez à jour l’extension WP-PageNavi.
Pour copier le code de votre extension, allez dans Réglages » PageNavi. Vous trouverez ensuite la section » Utiliser pagenavi-css.css » et cliquerez sur le bouton radio » Aucun » situé à côté.
N’oubliez pas de cliquer sur le bouton « Enregistrer les modifications » pour enregistrer vos modifications.
Ensuite, allez dans la section » Extensions » Éditeurs/éditrices de fichiers de plugins.
Vous pouvez ensuite ouvrir le menu déroulant » Sélectionné l’extension à modifier » et sélectionner » WP-Page Navi « . Vous pouvez ensuite cliquer sur ‘Sélectionné’.
Dans le menu de droite, cliquez sur le fichier pagenavi-css.css.
Ensuite, copiez tout le code dans ce fichier.
Ensuite, il suffit d’aller dans Apparence » Éditeurs/éditrices de thèmes.
Dans le menu de droite, cliquez sur le fichier style.css de votre thème.
Vous pouvez maintenant coller votre code pagenavi-css.css dans le fichier style.css du thème, et commencer à faire vos modifications.
Prenons un exemple. Voici une version modifiée du code de pagination numérique que vous pouvez ajouter au fichier style.css de votre thème :
wp-pagenavi {
clear: both;
}
.wp-pagenavi a, .wp-pagenavi span {
color: #FFF;
text-decoration: none;
background-color:#6FB7E9;
border: 1px solid #B2D1E5;
padding: 5px 5px;
margin: 2px;
}
.wp-pagenavi a:hover, .wp-pagenavi span.current {
border-color: #E9F2F9;
background-color:#6FB7E9;
}
.wp-pagenavi span.current {
font-weight: bold;
background-color:#3C8DC5;
}
Dans l’image suivante, vous pouvez voir à quoi ressemblera cette pagination numérique sur votre site.
Cela vaut la peine d’essayer différents styles pour voir ce qui convient le mieux à votre site WordPress.
Lorsque vous êtes satisfait de l’aspect de votre pagination numérique, cliquez sur le bouton Mettre à jour le fichier pour enregistrer vos modifications.
Méthode 2. Comment ajouter manuellement une pagination numérique dans votre thème WordPress
Une autre option consiste à ajouter manuellement la pagination numérique dans votre thème WordPress à l’aide d’un code.
De nombreux thèmes WordPress intègrent des liens « Plus ancien » et « Plus récent », ou une pagination numérique par défaut. Par exemple, le thème populaire Astra ajoute automatiquement sa propre pagination numérique à vos pages d’archives, comme vous pouvez le voir dans l’image suivante.
Vous pouvez utiliser cette méthode pour personnaliser la pagination intégrée à un thème. Par exemple, vous pouvez modifier le style pour mieux l’adapter à votre site.
Pour ajouter manuellement la pagination numérique, ouvrez le fichier functions.php de votre thème. Ici, vous pouvez utiliser soit un client FTP, soit le gestionnaire de fichiers du cPanel de votre hébergeur WordPress. Si vous utilisez le FTP, vous pouvez consulter notre guide terminé sur la façon de se connecter à votre site à l’aide du FTP.
Une fois que vous vous êtes bien connecté à votre site, ouvrez le fichier functions.php et ajoutez le code suivant :
function wpbeginner_numeric_posts_nav() {
if( is_singular() )
return;
global $wp_query;
/** Stop execution if there's only 1 page */
if( $wp_query->max_num_pages <= 1 )
return;
$paged = get_query_var( 'paged' ) ? absint( get_query_var( 'paged' ) ) : 1;
$max = intval( $wp_query->max_num_pages );
/** Add current page to the array */
if ( $paged >= 1 )
$links[] = $paged;
/** Add the pages around the current page to the array */
if ( $paged >= 3 ) {
$links[] = $paged - 1;
$links[] = $paged - 2;
}
if ( ( $paged + 2 ) <= $max ) {
$links[] = $paged + 2;
$links[] = $paged + 1;
}
echo '<div class="navigation"><ul>' . "\n";
/** Previous Post Link */
if ( get_previous_posts_link() )
printf( '<li>%s</li>' . "\n", get_previous_posts_link() );
/** Link to first page, plus ellipses if necessary */
if ( ! in_array( 1, $links ) ) {
$class = 1 == $paged ? ' class="active"' : '';
printf( '<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url( get_pagenum_link( 1 ) ), '1' );
if ( ! in_array( 2, $links ) )
echo '<li>…</li>';
}
/** Link to current page, plus 2 pages in either direction if necessary */
sort( $links );
foreach ( (array) $links as $link ) {
$class = $paged == $link ? ' class="active"' : '';
printf( '<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url( get_pagenum_link( $link ) ), $link );
}
/** Link to last page, plus ellipses if necessary */
if ( ! in_array( $max, $links ) ) {
if ( ! in_array( $max - 1, $links ) )
echo '<li>…</li>' . "\n";
$class = $paged == $max ? ' class="active"' : '';
printf( '<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url( get_pagenum_link( $max ) ), $max );
}
/** Next Post Link */
if ( get_next_posts_link() )
printf( '<li>%s</li>' . "\n", get_next_posts_link() );
echo '</ul></div>' . "\n";
}
Ce code permet d’obtenir le nombre de pages, prêt à être affiché dans votre thème WordPress.
Les étapes suivantes varient en fonction de votre thème.
Si votre thème ne dispose pas d’une forme de pagination par défaut intégrée, vous pouvez simplement ajouter le marqueur modèle suivant dans votre fichier index.php, archive.php, category.php, ou toute autre page où vous souhaitez afficher une pagination numérique.
<?php wpbeginner_numeric_posts_nav(); ?>
Sachez simplement que l’endroit où vous ajoutez ce code aura une incidence sur l’affichage de la pagination numérique sur votre site.
En règle générale, vous souhaitez afficher la pagination au bas de vos pages d’archives, c’est pourquoi vous devez ajouter le marqueur de modèle au code de votre pied de page.
Votre thème dispose-t-il déjà d’un formulaire de pagination, tel que des liens vers les « publications plus anciennes » et les « publications plus récentes » ?
Dans ce cas, vous devrez trouver le code de pagination et le remplacer par l’extrait ci-dessus.
Par exemple, Ashe est l’un des meilleurs thèmes de blog WordPress gratuits et ajoute déjà des liens de pagination » Première » et » Dernière page » à vos pages d’archives.
Pour remplacer ces liens intégrés par une pagination numérique, vous devez modifier les fichiers templates/grid.php et templates/blog-pagination.php du thème.
Dans chacun de ces fichiers, il suffit de trouver la section suivante :
<?php get_template_part( 'templates/grid/blog', 'pagination' ); ?>
Vous pouvez alors remplacer cette ligne par l’extrait de code suivant :
<?php wpbeginner_numeric_posts_nav(); ?>
Une fois le code ajouté, n’oubliez pas d’enregistrer vos modifications.
L’étape suivante consiste à personnaliser votre pagination numérique.
Pour aider les internautes à naviguer dans les archives, nous allons mettre en évidence le numéro de la page actuelle avec une couleur différente. Pour ce faire, ouvrez le fichier style.css de votre thème, puis collez le code suivant dans ce fichier :
.navigation li a,
.navigation li a:hover,
.navigation li.active a,
.navigation li.disabled {
color: #fff;
text-decoration:none;
}
.navigation li {
display: inline;
}
.navigation li a,
.navigation li a:hover,
.navigation li.active a,
.navigation li.disabled {
background-color: #6FB7E9;
border-radius: 3px;
cursor: pointer;
padding: 12px;
padding: 0.75rem;
}
.navigation li a:hover,
.navigation li.active a {
background-color: #3C8DC5;
}
Après tout cela, il vous suffit d’enregistrer vos modifications en cliquant sur le bouton Mettre à jour le fichier.
Maintenant, si vous visitez la page des archives, vous verrez la pagination numérique en direct sur votre site.
Nous espérons que cet article vous a aidé à apprendre comment ajouter une pagination numérique dans votre thème WordPress. Vous pouvez également consulter notre guide sur les moyens de gagner de l’argent en ligne en bloguant avec WordPress et comment créer un thème WordPress personnalisé sans écrire de code.
Si vous avez aimé cet article, veuillez alors vous abonner à notre chaîne YouTube pour obtenir des tutoriels vidéo sur WordPress. Vous pouvez également nous trouver sur Twitter et Facebook.
Tom
You really helpped me. Thanks !
Sam
Thanks very helpful
lucky cabarlo
how can i adjust the numbers to show in the custom numeric pagination
spongie
how do you limit the page number to say up to 2 only then show ellipsis?
krishma
can i use this plugin for custom post type
Astra
Of course mate. You just need to put this code into your page-custom.php
Med
Hello,
I found this very useful and I placed it to my new site. The problem is that it works perfect on the first page of the category, and after clicking on the « Next » link the url changes to /page/2/ but the highlighted page number is aways « 1 » and the content is always the first 10 articles (always in the first page).
I think there is something missing in my query:
<a href=" »>
‘aligncenter’));
} else {
echo »;
}
?>
Preeti Bhandari
how can i prevent whole page reload when clicking on next link, only want to refresh that particular section… Please help….
Luis Eduardo Braschi
Because « the goal is to replace the default Older and Newer pagination links at the bottom of archive pages » – and this is what « your » function does – « with easy to navigate page numbers. ».
Tony
Hi how do you get just the next and previous links only. thanks.
Barry
How can i use the wpbeginner_numeric_posts_nav(); for my Custom Post type?
I have replaced global $wp_query for
$args = array(
‘post_type’ => ‘my-cpt’,
‘meta_key’=>’cpt_detail’,
‘orderby’=>’meta_value’,
‘order’ => ‘ASC’,
‘paged’ => $paged
);
$cpt_query = new WP_Query($args);
and replaced $wp_query reference with $cpt_query but it doesn’t work
igloobob
Hi, did you ever figure this out please? I’m trying to get this working myself and struggling. Would appreciate your help very much if you got it working…
Ashley Michèlle
Using the ‘wpbeginner_numeric_posts_nav’ method, how would one change the navigation brackets? I’m not a huge fan of the ‘»’.
Thanks!
James George Dunn
Hello Ashley,
You can set a value in the brackets of get_previous_posts_link() and get_next_posts_link(). For example, get_next_posts_link(‘Next Post’) will show « Next Post » instead of the default « Next Page » ».
AmirMasoud
how can i change « Next Page » & « Previous page » text?
TimParkerRD
If you’re using the wpbeginner_numeric_posts_nav function, you can pass custom text to the get_next_posts_links() and get_previous_posts_link(), like so:
get_previous_posts_link(« Go Back »);
Daniel Ortiz
since Genesis Framework is not an open-source framework, are we allowed to use this code, commercially or not?( and are you allowed to distribute it?)
mr anon
thanks a lot
gosukiwi
Awesome, it works like a charm, I did some changes to fix my code though but the code is nice and well organized
Agarwalls
Thanks, Very helpful for me.
SJ
echo paginate_links( $args );
Why this one doesn’t do the job? I’m just curious
SJ
Why this one doesn’t do the job? I’m just curious
Baba agba
I tried it and its not working for me. Can you paste a simple example of your « paginated posts » code here
Nick
Has anyone had any luck getting this working with a custom WP_Query? It works perfect with the standard loop, but does not show up with a custom query. Any help would be great.
Thanks.
Marx
Have you tried the custom query examples noted from the codex?
http://codex.wordpress.org/Function_Reference/paginate_links
Hope that helps.
SJ
Well this one doesn’t work for me Don’t know why
Mufaddal
Thanks so much, I tried your solution it worked for me.
Timberland
You have 2 options to do that, First is to use query_posts instead of Wp_Query
or the Second is to name your custom query « wp_query » as $wp_query = new WP_Query( $args );
important part in both approaches is to pass the ‘paged’ => $paged argument in your query otherwise won’t work,
//////////////////////////////////////With Wp_Query
$args = array( ‘cat’ => 3, ‘paged’ => $paged );
$wp_query = new WP_Query( $args );
if ( $wp_query->have_posts() ) :
while ( $wp_query->have_posts() ) {
$wp_query->the_post();
get_template_part( ‘content’, get_post_format() ); }
else :
echo « No post to show »;
endif;
wpbeginner_numeric_posts_nav();
wp_reset_postdata(); }
//////////////////////////////////////With Query_Posts
$args = array( ‘cat’ => 3, ‘paged’ => $paged );
query_posts( $args );
if ( have_posts() ) :
while ( have_posts() ) {
the_post();
get_template_part( ‘content’, get_post_format() ); }
else :
echo « No post to show »;
endif;
wpbeginner_numeric_posts_nav();
wp_reset_query(); }
[Hope that helps]
DavidCWebs
Try this native WP function: http://codex.wordpress.org/Function_Reference/paginate_links There’s an example on that codex page showing how to use it with WP_Query.
Hope this helps
Tim
Do this pagination have page number limits or does it automatically detect when more pages are required? Works really nicely
Akash Funde
Thanks for sharing this it helps a lot
Thanks you so Much
adrian
I’ve been using this successful for search results, archives, categories.. but it’s not working for tags. I suspect it could be a permalink issue. The first page works fine, but subsequent pages return 404s. Should this work for tags by default.?
Bubu
search results, archives are ok but in categories same error here. the first page is ok, second page return with 404.
need some help to solve this issue thx
Caroline
Thanks for this, it came in real handy making pagination Foundation framework-ready.
Hiro
I added this to my site and it shows up properly but doesn’t display the proper content on page 2. Tried it both manually and with the plugin. Both times, the pagnation links appear, and when i click to go to page 2, the url changes to page 2 but the content on the page shows only content from page 1 (or index). Please advise
Steve
I am new to Genesis but you say if we are using it that the function is already in there but when I tried adding the php to the hooked area, nothing would display so… I added the above code to my genesis functions.php and added the php call to my hooked area and now the pagination displays but it does not work. When I click the 2nd page, it just reloads the current page.
WPBeginner Support
please contact genesis support
Administrateur
Tyler
Does this work for wordpress.com sites? I have this blog that is set up via wordpress.com, not the installed version and I need to add pagination for the blog. Is there a way to do that? Thanks for any future help!
WPBeginner Support
No this tutorial is mean for Self hosted WordPress.org sites. As a WordPress.com user you can not directly edit themes.
Administrateur
Crear Cuenta Outlook
thank you so much
Rajavenkateshwaran
Am facing issues when i use the function within the custom page template. I created a custom page template to loop 4 of the posts, this function works well in Homepage and it doesnshow any sign of navigation links in page template.
Best Regards,
Raja
WPBeginner Support
If you are using a custom WP_Query then please check pagination parameters.
Administrateur
aklavya
thanx ……………… this code is very helpful
Dejan
Thank you for this code of pagination it is working with WP 3.7.1
Eli Overbey
Any thoughts on how to get archived pagination on Category Blog Page? (in Genesis)
I was able to create a page entitled ‘counseling-blog’, so now we have a Category Blog page at
But here’s the problem… No pagination. The /blog/ has the pagination from Genesis WP. All we have on that new Category Page page is:
»
There is no rel=”next” or rel=”prev”… Any thoughts on how to add next and prev to the Category Blog Page?
I thought the page would add those tags because the template is set as blog.
Big V
Nice post, but I’m having issues with /page/2 not working in my custom theme. Any advice?
Jeremy
WordPress has a core function for doing this.
http://codex.wordpress.org/Function_Reference/paginate_links
Gohar ul Islam
I am searching code (or any kind of help) which uses paginate_links in Wp_query. Do u have any code like this?
Dmitry
Thanks!
Mzer Michael Terungwa
I tried to implement this pagination on the single.php page but it did not show up. Is this only for theme’s index.php, archive.php, category.php, and any other archive page template?
Michael
It appears that Multiple Posts Pagination is quite different from single post pagination and would require different template tags to create them.
WPBeginner Support
Yes this code is only for index and archive pages.
Administrateur
Felipe Gangrel
Awesome. Thanks a lot!!!
Talha
Great code, thanks bro
Shaghayeggh
Thank you very very much
Marko
Hi,
thanks for great tutorial!
I had to add ul in front of every li in style.css, otherwise this worked perfectly.
(.navigation ul li a,) etc…
elvinson
i have installed wp-pagenavi plugin, but it was not showing in archives , so i have used your coding manually it is working well. Thanks.
Don
what about pagination for a single post that contains numerous pages .. i.e.- this is about A SINGLE POST – that was too long and had to be divided into multiple pages ! … the wp codex for this type of single post pagination is done with the command ( ) … unfortunately none of the plugins out there provides a good solution for this type of pagination ….. or they simple avoid it all together … the wp-pagenavi mentionned it very briefly…. but does not work for single post pagination on 95 % of the wp themes out there….
if there is such a plugin that provides a good alternative for wp_link_pages with good styling and other options for single post pagination …. please share !!!
Editorial Staff
Genesis theme has that option. We are using that on our site http://list25.com/
Administrateur
Chinmoy Paul
Thanks for sharing this. I will use this in my next project.
Robert Smith
Thanks for this guys! Been looking for a simple solution like this all evening and this was gold!!
Keep up the great work on your site, as it is a regular resource of mine
Thanks,
Rob
Arilton Freitas
To me, the best way to include numeric pagination in WordPress is use the paginate_links() function. Simple and core-based.
http://codex.wordpress.org/Function_Reference/paginate_links
Editorial Staff
Didn’t even know that existed. Thanks for pointing this out.
-Syed
Administrateur
Mattia
Indeed this is awesome, but… The pagination always appear, also if not needed… Ho do you prevent this?
If mu limit is 10 posts per page, but I only have written 5, the paginations appears and sends me to an empty « page 2″… ;(
Mattia
I checked another of my sites and this error doesn’t appear. In this late site I am building, strangely pagination appears also if not needed! Does someone know which could be the cause? Many thanks!
Jacob
WordPress already has this baked in with a function called paginate_links (http://codex.wordpress.org/Function_Reference/paginate_links).
Upendra Shrestha
Hi, Previously I used wp pagenavi plugin in genesis framework. But it didn’t work with the framework. After adding the code « », it just worked. I didn’t realize that I had to add this code.
Thanks.
Alex Sancho
and what about the Wordpress function paginate_links? http://codex.wordpress.org/Function_Reference/paginate_links
Connie
for those who want to style differently but are not CSS-savy, there are at least 2 additional plugins available:
WP Visual Pagination, http://wordpress.org/extend/plugins/wp-visualpagination/
or
WP PageNavi Style , http://wordpress.org/extend/plugins/wp-pagenavi-style/
Cheers,
Connie
Editorial Staff
Thanks for letting us know Connie.
Administrateur
Azim
Isn’t it going to be a heavy SQL query, esp. on blogs with lots and lots of posts? I had to get rid of such pagination on one of my projects (containing over 10K posts), because hoster claimed it consumed too much of a CPU and SQL resources. Basically, what it did is selected ALL posts (over 10K, remember?) and then just divided them into multiple pages with 20 (or whatever you specify in admin) posts per page…
Editorial Staff
WordPress is dividing the posts in those pages to begin with using the WP_Query posts_per_page parameter. All this query is doing is looking at those pages and creating a numeric display. I’m sure there was more going on that your host didn’t bother explaining.
-Syed
Administrateur