Wordpress - How can we make managing lots of pages in WordPress Admin better?

Yeah, the admin doesn't work extremely well for a site with tons of Pages vs. Posts. As you mention most WordPress sites have been blogs and who needs to edit older blog posts frequently? Having the most recent available is all most bloggers usually need and since most blogs have probably 5 pages or less it's been a non-issue.

So I agree, it's definitely needed.

Three things that come to mind, without an admin overhaul would be the following two of which would require some coding:

  • Consider Using Custom Post Types?
  • Add Filtering Functionality to the List
  • Add an Expand/Collapse Functionality for Parent Pages
  • Finding Good Existing Plugins

Consider Using Custom Post Types?

Often with I've seen a site with lots of Pages it turns out there could be real benefit to breaking them out as Custom Post Types. Often it's because when the site was built Custom Post Types didn't exist in WordPress to even consider. You know, if the only tool you have is a hammer...

Today I think it's because they are still new that it doesn't occur to most people they are an option. Still my guess is if you looked at your content you'd identify patterns where Pages could be converted to one of more Custom Post Types.

To give you some inspiration here's a screen shot for two different Custom Post Types both with lots of customization I'm working on:

Example Custom Post Type #1

(source: mikeschinkel.com)

Example Custom Post Type #2
(source: mikeschinkel.com)

To Change Post Types for Existing Pages

Since you already have lots of Pages you may need to change your existing post types to the new custom post Type. One way you do this would be to tag the appropriate Pages with a special tag of your choosing and then write a PHP script or a SQL query to change post types for Pages with the tag.

Alternately you could write a custom metabox that allows you to change the type and/or you could modify the list of Pages to offer a type changing feature. If this part is of specific interest add a custom that specifically asks how to do one of these things.

Add Filtering Functionality to the List

Another approach would be to add more filtering options to the list. You could filter by categories, by tags and/or by meta values. Here's my answer to a question where I showed how to write the code to sort on meta values; filtering is similar:

Custom Post List Sorting in the WordPress Admin
(source: mikeschinkel.com)

If you want more specifics on how exactly to do this for your specific need please ask another more specific question?

Add an Expand/Collapse Functionality for Parent Pages

A third approach might be to provide an expand/collapse functionality using jQuery and maybe even AJAX to allow you to see only the top level pages and then drill down to the relevant sub pages. (unfortunately I couldn't find a good screen shot for this.)

This would also take some programming and if you are interested please ask another more specific question on the topic?

Finding Good Existing Plugins

While I haven't had experience with any of these here are some blog posts on the topic so maybe you'll be able to find what you need among these:

  • 8 WordPress Plugins for Page Management (mashable.com)
  • WordPress Plugins for Page Management (customweb2.com)
  • WordPress plugins For Page Management (justskins.com)

Hope this helps?


I use the CMS Tree View plugin, and it works very well. It collapses all your pages under their parent pages, among other features.

Update 26/09/19 This plugin is no longer supported and only tested up to version 4.8.7 of WordPress


You can change the "Pages per Screen" option in "Screen Options" (top right corner). If you set that to like 200, then you can use your browsers Find function to quickly jump around (Control / Command + F).

If I want to edit a few pages, I middle-click the edit links to open them in new tabs, that way I can keep my "directory" of pages open.