WP Page Numbers
2008-03-29 @ 18:44I made a paging navigation plugin for WordPress that will be an alternative to the ”Next page” and ”Previous page”. Instead it uses numbers which makes it easier for users to choose what page to go to. It also makes a tighter internal link structure which makes it easier for search engines to find your posts.
Info and download
- Birth date: 2008-03-29
- Last updated: 2009-07-05
- Version: 0.5
- Tested with: 2.3-2.8
- Download: WP Page Numbers
- Other versions: WP Page Numbers
Themes to choose from

All the 5 themes are included from start and are available in admin.
Screenshot
This is what it looks like if you don’t change anything (default paging theme):
![]()
You can also try it out as a live demo at the bottom of my blog.
Options
- You can set all the texts and arrows to what ever you want
- You can limit the number of pages shown at the time
- You can create paging stylesheets themes (if you don’t want to overwrite the default theme)
- You can turn off the stylesheet
- You can turn off the page information (page 3 of 5)
- You can turn off the page numbers
- You can turn off the first and end page numbers
- You can turn off the arrows
Updates 0.3 – 0.5
- Fixed bug with page numbers disappearing
- Added optional start and end code link wp_page_numbers($start, $end)
- Changed get_blog_info(url) to get_blog_info(wpurl)
- Changed get_settings (deprecated) to get_blog_info (bugfix)
- Added missing echos, which should fix the URLs to the preview images in admin
- Fixed 0 … 1 problem by checking if the page is front page or archive
Updates 0.2
- Put some ”reset”-code into the themes stylesheet to make the navigation bar look correct in all themes
- 5 WP Page Numbers themes to choose from
- Some layout changes in admin
Install
- Upload the FOLDER ‘wp-page-numbers’ to the /wp-content/plugins/
- Activate the plugin ‘WP Page Numbers’ through the ‘Plugins’ menu in admin
- Go to ‘Options’ or ‘Settings’ and then ‘WP Page Numbers’ to change the options
Usage
- Replace the the ‘next_posts_link()’ and ‘previous_posts_link()’ with the code below in theme (archive.php, index.php or search.php). If you can’t find it, place it between endwhile; and endif; in your theme.
-
<?php if(function_exists('wp_page_numbers')) { wp_page_numbers(); } ?>
Advanced usage
This plugin uses only WordPress own string values, no own SQL-querys is written. That means that you can use this plugin for more advanced use.
Example: You have a page which contains the query_posts() function and a loop to get some posts into the page. In that case you can use WP Page Numbers (see usage). If the posts are less than what is set in admin, the navigation will be hidden.
Contribution from users
- Citrus theme from Abdelilah Nassib – Demo at www.baissi.com/blog
- Russian version of WP Page Numbers at lukjanow.ru
Known issues
- WP Page Numbers count wrong sometimes – Very high priority
- Odd permalink structure makes the page numbers link wrong – High priority
Suggested features
These features could be included in future versions of WP Page Numbers.
- Option to center the page numbers – Normal priority
- Change the containing ID to an containing class to make the page validate with multiple page number sets – High priority
- Localizable WP Page Numbers for different languages – High priority
Bug report
If you have found a bug I want to know about it so I can fix it.
- Tell me your plugin version, WordPress version and what browser you use.
- If you suspect a collision with another plugin, tell me what plugin you suspect, or a list with suspected plugins
- Have you tested this plugin on another WordPress-version and can confirm that it works? Let me know!
Contribute
The best way to contribute is to spread the word, link to this page, blog about WP Page Numbers or give me feedback. All kinds of feedback are helpful to me. Suggestions and bug report are also welcome.







2012-02-21 @ 12:53
Hello,
I’m French and I don’t speak english very well.
I want to install another version of the plugin and so I want change the file ”wp-page-numbers.php” to install a second version of the plugin (I want a second configuration for my blog).
I have changed the name in first line ”WP Page Numbers 2″ and I have changed the name of the functions with ”_2″ but it’s not good, there are errors and wordpress don’t accept to activate it.
Can you help me, me please ?
Best regards !
2012-02-23 @ 15:23
We have problem with this query.
SELECT SQL_CALC_FOUND_ROWS wp_posts.* FROM wp_posts WHERE 1=1 AND ( wp_posts.ID NOT IN (
SELECT object_id
FROM wp_term_relationships
WHERE term_taxonomy_id IN (17451,19842,21673,23060)
) ) AND wp_posts.post_type = ‘post’ AND (wp_posts.post_status =
‘publish’) GROUP BY wp_posts.ID ORDER BY wp_posts.post_date DESC LIMIT 0, 20
And we need to understand if this coming from your plugin.
We have a lot of posts so the pagination burn our CPUs.
Thanks for all helps
2012-02-29 @ 21:28
[...] something worked, so most of them will fix little things like character replacement and what not. WP Page Numbers – Show pages numbers instead of "Next page" and "Previous Page". WPMS Sidebar [...]
2012-03-19 @ 7:51
[...] Script apa yang digunakan? ngapain coding susah – susah kalo udah ada pluginnya ? Download aja disini WP Page Number [...]
2012-03-31 @ 16:35
[...] page numbers的英文搜索结果 – 来自 WP Page Numbers – WordPress plugin for navigation paging… I made a paging navigation plugin for WordPress that will be an alternative to the ”Next page” [...]
2012-03-31 @ 19:11
[...] I’ve rewritten it further, and now decided to release my version as it’s own plugin, given that I haven’t heard back from the original author. [...]
2012-04-09 @ 14:58
[...] Guide To Useful WP Plugins WP Page Numbers – Show pages numbers instead of "Next page" and "Previous Page". WPMS Sidebar [...]
2012-04-18 @ 15:47
[...] something worked, so most of them will fix little things like character replacement and what not. WP Page Numbers – Show pages numbers instead of “Next page” and “Previous [...]
2012-04-30 @ 19:33
[...] Eklenti Ana Sayfası [...]
2012-05-08 @ 23:52
[...] WP Page Numbers [...]
2009-05-11 @ 0:01
Do i replace
next_posts_link(__(‘« Older Entries’, ‘default’)) with
then, also replace
previous_posts_link(__(‘Newer Entries »’, ‘default’)) with
..
or am i doing something wrong?
2009-05-26 @ 17:15
Replace this code in archive.php, index.php or search.php
With this code
It worked for me but maybe someone else has a different way.
CHEERS :)