Möchten Sie in Ihrem WordPress-Theme eine numerische Paginierung hinzufügen?
Standardmäßig fügen WordPress-Themes am unteren Rand von Archivseiten Links zu „Weiter“ und „Zurück“ ein. Das Problem ist, dass diese nicht sehr benutzerfreundlich sind. Aus diesem Grund verwenden viele beliebte Blogs eine numerische Paginierung, um den Besuchern die Navigation durch ihre Archivseiten zu erleichtern.
In diesem Artikel zeigen wir Ihnen, wie Sie in Ihrem WordPress-Theme eine numerische Paginierung hinzufügen können.
Warum sollten Sie eine numerische Paginierung in Ihr WordPress-Theme integrieren?
Die meisten Themes verfügen über eine Archivseite, die eine Liste der Beiträge anzeigt. Wenn Sie mehr WordPress-Beiträge veröffentlichen, wird Ihre Archivseite mehrere Seiten umfassen.
Paginierungslinks helfen den Besuchern, zwischen den Archivseiten zu wechseln, und erscheinen normalerweise am unteren Rand Ihrer WordPress-Website.
Einige WordPress-Themes verwenden die Links „Ältere Beiträge“ und „Neuere Beiträge“ für die Seitennavigation. Dadurch kann sich der Besucher jedoch nur um eine Seite vor- und zurückbewegen.
Außerdem wird nicht angezeigt, wo sich der Besucher gerade im Archiv befindet. Dies kann es für Besucher schwieriger machen, im Archiv Ihres Blogs zu navigieren.
Hier kommt die numerische Paginierung ins Spiel.
Anstelle von Links zu „Älter“ und „Neuer“ zeigt die numerische Paginierung eine Reihe von Zahlen, mit denen Besucher zu einer bestimmten Seite im Archiv springen können.
Die numerische Paginierung kann auch durch Hervorhebungen oder unterschiedliche Farben die aktuelle Seitenzahl anzeigen, so dass der Besucher immer genau weiß, wo er sich im Archiv befindet.
Bei WPBeginner verwenden wir eine numerische Paginierung und heben die aktuelle Seitenzahl in Orange hervor. Wir bieten auch direkte Links zu den 4 Seiten, die die aktuelle Seite des Besuchers umgeben.
Wir haben sogar einen Link zur letzten Seite in unserem Archiv, so dass Besucher schnell und einfach unsere frühesten Beiträge sehen können, wie Sie auf dem folgenden Bild sehen können.
Unserer Erfahrung nach erleichtert diese Art der numerischen Paginierung die Navigation auf Ihrer Website im Vergleich zu den Standardlinks „Ältere Beiträge“ und „Neuere Beiträge“.
Wenn Ihr WordPress-Theme eine „Ältere“ und „Neuere“ Paginierung hat, empfehlen wir immer, diese durch eine numerische Paginierung zu ersetzen.
In diesem Leitfaden werden wir zwei verschiedene Möglichkeiten vorstellen, wie Sie in Ihrem WordPress-Theme eine numerische Paginierung hinzufügen können. Wenn Sie es vorziehen, direkt zu einer bestimmten Methode zu springen, dann können Sie die Links unten verwenden.
- Methode 1. Hinzufügen einer numerischen Seitennummerierung in WordPress mit WP-PageNavi
- Methode 2. So fügen Sie manuell eine numerische Paginierung in Ihr WordPress-Theme ein
Methode 1. Hinzufügen einer numerischen Paginierung in WordPress mit WP-PageNavi
Der einfachste Weg, eine numerische Paginierung in WordPress hinzuzufügen, ist die Verwendung des Plugins WP-PageNavi.
Um dieses Plugin zu verwenden, müssen Sie immer noch einige Änderungen am Code Ihres Themes vornehmen, aber es ist viel einfacher als die vollständige Code-Methode, da WP-PageNavi Ihnen die vollständige Kontrolle über die Paginierung Ihrer Website gibt.
Als Erstes müssen Sie das Plugin WP-PageNavi installieren und aktivieren. Weitere Details finden Sie in unserer Schritt-für-Schritt-Anleitung für die Installation eines WordPress-Plugins.
Nachdem Sie das Plugin aktiviert haben, gehen Sie zu Einstellungen “ PageNavi, um die Plugin-Einstellungen zu konfigurieren.
Hier können Sie den Standardtext für die Seitennavigation durch Ihren eigenen Text ersetzen. Sie können zum Beispiel den Text ändern, den Ihre Website für die Links „Erste Seite“ und „Letzte Seite“ verwendet.
Sie können auch die Links für die numerische Paginierung anpassen.
Im Abschnitt „Anzahl der anzuzeigenden Seiten“ können Sie festlegen, wie viele Seiten das Plugin im Paginierungsbereich Ihrer Website anzeigen soll.
Dieser Wert ist standardmäßig auf 5 gesetzt, was bedeutet, dass WP-PageNavi direkte Links zu 5 Seiten anzeigt.
Wie Sie auf dem Screenshot unten sehen können, sehen Sie auf Seite 4 Links zu den Seiten 2, 3, 4, 5 und 6.
Vielleicht möchten Sie mehr oder weniger Seiten anzeigen. Um diese Änderung vorzunehmen, geben Sie einfach die neue Zahl in das Feld „Anzahl der anzuzeigenden Seiten“ ein.
Standardmäßig zeigt das Plugin mehrere größere Zahlen an. So können sich Besucher mit nur einem Klick durch mehrere Seiten vorwärts bewegen.
Standardmäßig zeigt das Plugin drei größere Zahlen an, die sich jedes Mal um 10 erhöhen. Zum Beispiel: 10, 20 und 30.
Sie möchten ein anderes Intervall verwenden, z. B. 5 oder 20? Dann geben Sie das neue Intervall einfach in das Feld „Größere Seitenzahlen in Vielfachen von anzeigen“ ein.
Jede WordPress-Website ist anders, daher ist es eine gute Idee, verschiedene Einstellungen auszuprobieren, um zu sehen, welche Paginierungseinstellungen für Sie am besten funktionieren.
Wenn Sie Änderungen an den WP-PageNavi-Einstellungen vorgenommen haben, vergessen Sie nicht, zum Ende der Seite zu scrollen und auf die Schaltfläche Änderungen speichern zu klicken.
Als nächstes müssen Sie ein Template-Tag in Ihr WordPress-Theme einfügen. Dazu empfehlen wir, ein Child-Theme zu erstellen und dann den Code des Child-Theme zu bearbeiten.
Wenn Sie ein Child-Theme erstellen, können Sie Ihr WordPress-Theme sicher aktualisieren, ohne dass Ihre benutzerdefinierte numerische Paginierung verloren geht. Weitere Informationen finden Sie in unserer Schritt-für-Schritt-Anleitung zur Erstellung eines WordPress-Child-Themes.
Unabhängig davon, ob Sie ein übergeordnetes oder untergeordnetes Thema bearbeiten möchten, benötigen Sie einen FTP-Client. Wenn Sie FTP zum ersten Mal verwenden, lesen Sie unsere vollständige Anleitung, wie Sie sich per FTP mit Ihrer Website verbinden.
Wenn Sie über FTP mit Ihrem WordPress-Hosting-Konto verbunden sind, können Sie den Code Ihres WordPress-Themes bearbeiten.
Diese Schritte hängen von Ihrem WordPress-Theme ab. In der Regel müssen Sie jedoch den Code in der Datei index.php oder archive.php sowie alle anderen Archivvorlagendateien in Ihrem WordPress-Theme bearbeiten.
Öffnen Sie einfach diese Dateien und suchen Sie dann nach den Tags previous_posts_link und next_posts_link.
Wenn Sie diese Tags finden, ersetzen Sie sie durch den folgenden Codeschnipsel:
<?php wp_pagenavi(); ?>
Einige Themes haben möglicherweise keinen previous_posts_link oder next_posts_link Tag.
Wenn Sie diese Tags in Ihrem Thema nicht finden können, suchen Sie stattdessen nach the_posts_navigation. In der Datei archive.php des Themas Twenty Twenty-One finden Sie zum Beispiel Folgendes:
<?php /*twenty_twenty_one_the_posts_navigation();*/
Sie können diese Zeile dann durch den folgenden Codeausschnitt ersetzen:
<?php wp_pagenavi(); ?>
Nachdem Sie diese Änderungen vorgenommen haben, speichern Sie sie und schließen Sie dann alle geöffneten WordPress-Theme-Dateien.
Wenn Sie nun Ihre WordPress-Archivseite besuchen, sollten Sie Ihre neue numerische Paginierung auf Ihrer Website sehen.
An dieser Stelle möchten Sie vielleicht die Farbe und den Stil der numerischen Paginierung ändern, damit sie besser zu Ihrem Thema oder dem Branding Ihrer Website passt.
Sie können dies tun, indem Sie den Code des Plugins bearbeiten.
Wir empfehlen jedoch, den WP-PageNavi-Code in die style.css-Datei Ihres Themes einzufügen und dann Ihre Änderungen innerhalb der Themedatei vorzunehmen. Auf diese Weise gehen Ihre Anpassungen nicht verloren, wenn Sie das WP-PageNavi-Plugin aktualisieren.
Um Ihren Plugin-Code zu kopieren, gehen Sie zu Einstellungen “ PageNavi. Suchen Sie dann den Abschnitt „pagenavi-css.css verwenden“ und klicken Sie auf die Optionsschaltfläche „Nein“ daneben.
Vergessen Sie nicht, auf die Schaltfläche „Änderungen speichern“ zu klicken, um Ihre Änderungen zu speichern.
Gehen Sie dann auf Plugins “ Plugin File Editor.
Öffnen Sie dann das Dropdown-Menü „Zu bearbeitendes Plugin auswählen“ und wählen Sie „WP-Page Navi“. Danach können Sie auf „Auswählen“ klicken.
Klicken Sie im rechten Menü auf die Datei pagenavi-css.css.
Kopieren Sie dann den gesamten Code in diese Datei.
Als Nächstes gehen Sie einfach auf Erscheinungsbild “ Editor für Themendateien.
Klicken Sie im rechten Menü auf die Datei style.css Ihres Themas.
Nun können Sie den Code der Datei pagenavi-css.css in die Datei style.css des Themas einfügen und Ihre Änderungen vornehmen.
Schauen wir uns ein Beispiel an. Hier ist eine modifizierte Version des Codes für die numerische Paginierung, die Sie in die style.css-Datei Ihres Themas einfügen können:
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;
}
In der folgenden Abbildung können Sie sehen, wie diese numerische Paginierung auf Ihrer Website aussehen wird.
Es lohnt sich, verschiedene Stile auszuprobieren, um zu sehen, welcher auf Ihrer WordPress-Website am besten aussieht.
Wenn Sie mit dem Aussehen Ihrer numerischen Paginierung zufrieden sind, klicken Sie auf die Schaltfläche Datei aktualisieren, um Ihre Änderungen zu speichern.
Methode 2. Manuelles Hinzufügen einer numerischen Paginierung in Ihrem WordPress-Theme
Eine andere Möglichkeit besteht darin, die numerische Paginierung in Ihrem WordPress-Theme mithilfe von Code manuell hinzuzufügen.
Viele WordPress-Themes verfügen über integrierte „Ältere“ und „Neuere“ Links oder eine standardmäßige numerische Paginierung. Das beliebte Astra-Theme zum Beispiel fügt automatisch eine eigene numerische Paginierung zu Ihren Archivseiten hinzu, wie Sie im folgenden Bild sehen können.
Sie können diese Methode verwenden, um die integrierte Paginierung eines Themas anzupassen. Sie können zum Beispiel das Styling ändern, um es besser an Ihre Website anzupassen.
Um eine numerische Paginierung manuell hinzuzufügen, öffnen Sie die Datei functions.php Ihres Themes. Hier können Sie entweder einen FTP-Client oder den Dateimanager Ihres WordPress-Hostings cPanel verwenden. Wenn Sie FTP verwenden, lesen Sie bitte unsere vollständige Anleitung zur Verbindung mit Ihrer Website per FTP.
Sobald Sie sich erfolgreich mit Ihrer Website verbunden haben, öffnen Sie die Datei functions.php und fügen Sie den folgenden Code ein:
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";
}
Dieser Code ermittelt die Anzahl der Seiten, die Sie in Ihrem WordPress-Theme anzeigen können.
Die nächsten Schritte hängen von Ihrem Thema ab.
Wenn Ihr Theme keine standardmäßige Paginierung eingebaut hat, können Sie einfach den folgenden Template-Tag in Ihre index.php, archive.php, category.php oder jede andere Seite einfügen, auf der Sie eine numerische Paginierung anzeigen möchten.
<?php wpbeginner_numeric_posts_nav(); ?>
Beachten Sie jedoch, dass die Stelle, an der Sie diesen Code einfügen, Auswirkungen darauf hat, wo die numerische Paginierung auf Ihrer Website angezeigt wird.
In der Regel möchten Sie die Paginierung am unteren Ende Ihrer Archivseiten anzeigen, weshalb Sie das Template-Tag in der Regel in den Fußzeilencode einfügen.
Verfügt Ihr Theme bereits über eine Form der Paginierung, z. B. Links zu „Ältere Beiträge“ und „Neuere Beiträge“?
In diesem Fall müssen Sie den Code für die Paginierung finden und ihn durch das obige Snippet ersetzen.
Ashe ist zum Beispiel eines der besten kostenlosen WordPress-Blog-Themes und fügt Ihren Archivseiten bereits Paginierungslinks für die erste und letzte Seite hinzu.
Um diese eingebauten Links durch eine numerische Paginierung zu ersetzen, müssen Sie die Dateien templates/grid.php und templates/blog-pagination.php des Themas bearbeiten.
In jeder dieser Dateien finden Sie einfach den folgenden Abschnitt:
<?php get_template_part( 'templates/grid/blog', 'pagination' ); ?>
Sie können diese Zeile dann durch den folgenden Codeausschnitt ersetzen:
<?php wpbeginner_numeric_posts_nav(); ?>
Wenn Sie den Code eingefügt haben, vergessen Sie nicht, Ihre Änderungen zu speichern.
Der nächste Schritt ist die Gestaltung der benutzerdefinierten numerischen Seitennummerierung.
Um den Besuchern die Navigation im Archiv zu erleichtern, werden wir die aktuelle Seitennummer mit einer anderen Farbe hervorheben. Öffnen Sie dazu die Datei style.css Ihres Themas und fügen Sie den folgenden Code in diese Datei ein:
.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;
}
Danach speichern Sie Ihre Änderungen einfach, indem Sie auf die Schaltfläche Datei aktualisieren klicken.
Wenn Sie nun die Archivseite besuchen, sehen Sie die numerische Paginierung live auf Ihrer Website.
Wir hoffen, dass dieser Artikel Ihnen geholfen hat zu lernen, wie Sie eine numerische Paginierung in Ihr WordPress-Theme einfügen können. Sie können auch unseren Leitfaden zu den Themen “ Geld verdienen mit WordPress-Blogging “ und “ Wie man ein individuelles WordPress-Theme erstellt, ohne Code zu schreiben“ lesen.
Wenn Ihnen dieser Artikel gefallen hat, dann abonnieren Sie bitte unseren YouTube-Kanal für WordPress-Videotutorials. Sie können uns auch auf Twitter und Facebook finden.
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
Admin
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.
Admin
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.
Admin
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.
Admin
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/
Admin
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
Admin
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.
Admin
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
Admin