WordPress plugin: Pages+

Update: I’ve moved pages+ to it’s own page – click here to continue

Pages+ is my first decent wordpress plugin, and will be of use to those with many pages within their wordpress site. It replaces the Manage » Pages admin page with a more simple way of navigating to a page.

Pages+ in WordPress 2

I’ve used it in wordpress 1.5 and 2.0 with no problems. The site it was developed for is currently at 2,200 pages(!) and is using this plugin as the main way of navigating through page administration. If you find it useful (or hate it), I’d appreciate a comment back.

Download Pages+

Update: I’ve added Croila’s suggestion of a child page counter. Now, each title is followed by the number of direct (first level) child pages under that page.


  1. Upload the pagesplus.php file into your wp-content/plugins folder on your website
  2. In your wordpress admin area, click Plugins and activate Pages+
This entry was posted in code, plugins, wordpress. Bookmark the permalink. Follow any comments here with the RSS feed for this post.

43 Responses to WordPress plugin: Pages+

  1. Croila says:


    Thank you for making this plugin available. I kind of like it, but I tell you what could make it even better: indicating on the main “page+” page how many child pages each parent page has – if any. I mean, at the moment you have to click on the title on the left-hand side to see if those main pages have any child pages – it’s not immediately apparent.

    Might it be possible to have, say, in brackets after the page title a number showing how many child pages that main page spawns? For example, “Links (3)” could mean that your main “Links” page has three child pages underneath which you can click through to.

    Just a thought. I probably haven’t made myself very clear here – sorry! If this functionality could be added, I’d love it.

    Kind regards,

  2. Adam says:

    Thanks for your comments Croila. I thought about adding that, but would you want it to show all child pages under the current page, or just the first level of child pages? Showing all would take a lot of db queries…


  3. Croila says:

    Hmmm. I never thought about that! How about just the first level? Because then at least there is an indicator that you should indeed click on the parent page title to drill down? Then once you got down to the second level, you could show a third level down and so on? I don’t know if this is possible or not, but I certainly do like the thought of it :-)

  4. Adam says:

    I’ve added that feature and updated the download above. It shows the first level child pages in brackets after each title. Thanks Croila, i’ve credited you above and in the source.

  5. Croila says:

    Adam, that’s brilliant! Thanks ever so much for making that alteration. I run four WordPress sites (two corporate ones, two personal), so this plugin is really really useful for me. Many thanks – much appreciated!

    Kind regards,

  6. Dayna says:

    This plugin is working great on my site, it makes managing pages so much easier. Thanks a lot =) I was wondering if it is possible to make the ‘page manage’ page to replace the default ‘manage page’ page?

  7. Dayna says:

    Sorry, got something more to add to the previous comments.

    A suggestion: Is it possible to add a “Create New Page” in the plugin so that for eg I’ve at ” You are here: Thoughts › Root” and I will create the new page in that ‘thoughts’ category? So if I’m at “You are here: Tutorials › The Visitors › Root” and I click on the “Create New Page” on that page and I’ll be creating a new page in visitors/tutorials. If you get what I mean :) This makes life so much easier. Thank you

  8. Adam says:

    Both great suggestions. It is possible to have Pages as the default ‘Manage’ page – I’ve done this on our site – but it involves modifying the wordpress core in a way which cannot be done with a plugin. I’ll try and post a quick guide over the next few days.

    I’ll also try and get the ‘Create New Page’ functionality working – it’s something i’d considered, but haven’t had time at work or motivation out of work!

  9. Dayna says:

    Thank you Adam :) I’ll keep a look out for those 2. Many thanks for your hard work and effort.

  10. Dayna says:

    After clicking around for some time, I noted some errors on mine.

    When I’m in “Tutorials › The Visitors › Root”
    When I click on any of the view link, the permalink is wrong.
    one of them leads to http://siteurl.com/pagepermalink/
    instead of http://siteurl.com/visitors/tutorials/pagepermalink/
    I realise this only happen in 2 page parent.. like if it’s “The Visitors › Root” there are no errors, everything works fine.

    Another thing is that when I edited the page slug of my page, the permalink does not change (the URL of the view) so it results in a 404 page for this and the above. Any way to fixed that?

    A slight note, is it possible to remove the (0) when there are no child pages?

    Thanks :)

  11. Adam says:

    Hi Dayna,

    Thanks for your comments. The reason the permalink is wrong is that it uses the page guid. This is the unique ID wordpress assigns to each post, and is permanent – so if you change the post slug, the guid doesn’t change and is therefore wrong. The plugin integrates with my next plugin, which fixes the guid on the fly – only I’ve not had time to tidy up and release the plugin. Can you wait a few days? I’ll try and get it finalised at the weekend.

    I’ll remove the (0) and the un-link the title when i get a second.


  12. Dayna says:

    Oh ya ya. sure, no problems. Thanks Adam for looking into this. :)

  13. Pingback: Blogging Pro China » Blog Archive » Wordpress plugin: Pages+

  14. Todd Lambert says:

    Very nice plugin… this comes in handy when managing more than 20 pages… I’ve got like 60 pages so far, with the possibility to have over 100 within the next year, so this will help quite a bit.

    Thanks for all of your work on this. It works great for me so far…

  15. Pingback: Blogalistic » Pages+

  16. Thanks a lot for this awesome plugin.Ive gotten it working great on my site,Managing pages so much easier with this.

    Thanks once again :)


  17. lil wyte says:


    I installed WordPress on my server, and set up a site. It’s a relly nice piece of software. However, I am missing a piece of functionality, and

    couldn’t find a suitable answer for it. Mayou you know a plugin I could use?I need to automatically inserts ads in my posts.And not AdSense ads, but rather HTML snippets defined by me (affiliate links, etc). Let’s say I would insert a tag in my post:
    – ad here –
    and the plugin would automatically replace it with some HTML code, when the post is displayed on my site.I really don’t need any fancy configuration options etc, just the basic replace functionality.
    Do you know a plugin that can handle this?

  18. Katie says:

    This plug is great, thank you for making it available. The alterations and improvements were a good idea.

  19. Maximilian says:

    What I want to do on my blog, is every few hours take the oldest post and move it to the front of the queue, all automatically. Anyone know if there is a plugin that can do this or a simple way to set up another plugin to do this (use my own feed perhaps)? Thanks.

  20. This is a great plugin–makes managing pages so much easier. Because of a change in database fields, it does not work with WordPress 2.1. However, it’s easy to work around that. Around line 145, change the database query to:

    $sql = “SELECT ID, menu_order, post_title, post_name, guid FROM $wpdb->posts WHERE post_parent = $parent_id AND post_status = ‘publish’ AND post_type = ‘page’ ORDER BY $orderby $sortorder”;

  21. Adam says:

    Thanks for the update, Virginia – I’ll update the code asap!

  22. Joe says:

    Lieber grumble!!! hoffe dir gehts gut da in der fremden weite… wenn man dich schon nicht persænlich besuchen kann…

  23. @lil wyte I am wanting to do the exact same thing, did you ever get an answer to this? You asked: (I need to automatically insert ads in my posts. And not AdSense ads, but rather HTML snippets defined by me (affiliate links, etc).

    Can anyone help me with this?
    I don’t really need a plugin, the file I need to call is php. I just need to know which file to edit and where to place the call.


  24. Chris says:

    Adam, you mentioned in January that you would soon release your automatic GUID fixing plugin. Did that turn out to be too hard to do? Or did you forget to release it? It would really come in handy if you have it lying around somewhere.


  25. Pingback: 10 Wordpress Plugins Guaranteed to Save You Time

  26. Pingback: 10 plugins de Wordpress que te ayudarán a ahorrar tiempo | aNieto2K

  27. Pingback: Wordpress plugins to save you time at posting | Pankaj Speaks

  28. Pingback: 10 Wordpress ???????? ??? ???????? ?????? ??????? (Post ideas, Tidy Up, Mass post manager, Tweetable Twitter, Sticky Post ? ??.) :: Tod’s Blog

  29. Pingback: Wordpress, 10 Time-Saver Plugins | Blog YODspica Ltd

  30. Pingback: 10 Wordpress Plugins & Save Your Time » WPDesignBlog - wordpress design blog , wordpress themes, themes, design, wp themes, webdesign, templates

  31. Pingback: Zaman kazand?racak 5 mükemmel Wordpress Eklentisi | UstaBlogcu

  32. Pingback: 10 Wordpress Plugins Guaranteed to Save You Time

  33. Pingback: willshouse.com » 10 Wordpress Plugins Guaranteed to Save You Time

  34. Pingback: 10 Wordpress Plugins Guaranteed to Save You Time | Blog Union

  35. Pingback: adamhopkinson.co.uk » Wordpress plugin: Pages+ | Squico

  36. Pingback: 15 ottimi plugin wordpress | Risorsa informatica - Blognews

  37. Pingback: 10 Wordpress Plugins Guaranteed to Save You Time | Webmaster 9

  38. Pingback: AMB Album » 10 Wordpress Plugins Guaranteed to Save You Time

  39. Pingback: 10 Wordpress Plugins Guaranteed to save you time! | Just Social

  40. cubrikaska says:

    Es la idea excelente. Es listo a apoyarle.

  41. Pingback: CoffeeIT.Net » Blog Archive » 10 Wordpress Plugins Guaranteed to Save You Time

  42. Pingback: 10 Essential Timesaving Wordpress Plugins

Leave a Reply

Your email address will not be published. Required fields are marked *


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>