At one point in a far away universe, we built a very useful page menu plugin for WordPress called Embed Page Menus. Embed Page Menus allows publishers to show all the subpages of a given page or even subpages of a specific page. The embed feature is excellent and we still use it.
Hierarchy was a bit of a problem though. At the time – probably 2008 – we weren’t very good at drag and drop and all the open source javascript drag and drop libraries had yet to be coded. So we managed page hierarchy by using WordPress’s built in priority numbers. The way we did it was to leave four or five blanks between numbers. If we had to move a document higher, we just used an unused number.
Clunky but it got the job done. Particularly as our website in 2008 was a lot smaller than it is now, when we have literally hundreds of hierarchical document pages grouped into Basic Setup, Advanced, Video Hosting, Ads, Securing Your Video, FV Player Pay Per View, Demos, etc.
We are about to do a major re-organisation of the FV Player docs. As well as moving docs into different silos, the reorganisation involves an incredible amount of changing the order of docs. Some business people would suggest we just use some kind of SAAS for our documentation, knowledge-base. We reject that idea for two reasons:
- we like to have control of our core software, as we can customise it and more importantly – Peter Coppinger and Daniel Mackey – no one can change the terms or cancel it.
- we create and manage sites with WordPress. For all of our distaste for Gutenberg or more particularly the hundreds of thousands of man hours spent on it, WordPress is an incredibly flexible tool. If a WordPress software publisher can’t keep its documentation in WordPress, that publisher is probably not competent to code for WordPress.
This leaves us with a huge issue. We still want to use our Embed Page Menus post-organisation but we need a better way to set hierarchy within sections of the documentation than a two-digit number.
I went looking for drag and drop page re-ordering plugins. This is a different challenge than manually re-organising posts on the home page. Posts are ordered chronologically by default and I would not recommend changing that. If you wish to set particular pages on the home page, I’d recommend using pages instead. There is a popular posts hierarchy plugin too though for those rash enough to attempt to order their posts manually.
There’s three serious candidates for re-ordering of pages.
- CMS Tree Page View. 329/347 five star reviews. 70000+ users. Developers: Jon Christopher (SearchWP creator) and eskapism/Pär Thernström, creator of the brilliant Simple History.
- Simple Page Ordering. 110/121 five star reviews. 200000+ users. Developers: 10up participation, six other serious co-developers. GitHub repository welcomes contribution.
- Admin Menu Tree Page View. 33/43 five star reviews (eight of the none five star are four star). 20000+ users. Developers: Ciprian Popescu of getbutterfly and again Jon Christopher.
There were some other serious candidates at one point but most of them only work up to WordPress 3 and have issues now. There’s been a lot of improvements to AJAX in the last seven years so anything with a javascript based interface which has not been updated is hopelessly out-of-date.
All of these plugins are free. None of them have (thank heavens) a pro version and are thus hopefully free of nagware. Real WordPress by developers, for developers, shared tools.
So how to choose?
CMS Tree Page View places a single small link under the Pages menu called Tree Page View. By clicking Tree Page View, you’ll see a page with all your top-level pages. The pages with subpages will include a small triangle.
When re-ordering your pages, moving them from one section to another, you should be putting redirections in. Hence for most websites it would be short-sighted to encourage frequent movement of pages. Changing hierarchy within a a group of subpages won’t change URLs but moving to another section of subpages or to root level will. Hence I prefer the idea of going to a dedicated admin page to make changes to site structure.
There’s also more room to work within CMS Tree Page View, especially if you are on a large desktop monitor. If you regularly work on a small laptop screen or (I can’t imagine it) on a tablet, Admin Menu Tree Page View would let you make changes while requiring less space.
I loved the look of CMS Tree Page View when I installed it.
CMS Tree Page View is very slow with our 800 odd pages on Foliovision.com (that doesn’t count the bbPress forums of course). Ironically, search for some reason didn’t work at all (considering that SearchWP founder Jon Christopher is co-author). I was unable to use simple web browser page search to find the page I’d moved to the wrong place as it had gone into a sub-section of a sub-section which had stayed closed after the drop (in principal should open up automatically after new content is dropped in).
I had to use SearchWP to find the missing content where our FV Player integrations had ended up in the Crossgrade sub-section. Now that I knew where the missing page was, I could find it in CMS Tree Page View and move it back to where it belonged. But instead, I’ve decided to install Simple Page Ordering and see if it’s any easier to use.
Search does work in Simple Page Ordering even if it takes five seconds or more. But once you’ve succeeded at search you are in a bit of a bind as you will have no way of moving the page, except to open Quick Edit (better than Edit) and change the parent page. At that point, you’ll have to reload your pages and scroll through as many pages as it takes to find the moved page and then set its priority within its section.
If you move a page, it takes more than ten seconds for the new position to save. Very slow. Get used to looking at that spinning save ball.
Again, Simple Page Ordering looks like it’s meant for sites with one hundred or two hundred pages. Using it on a larger set of pages is awkward.
Once you are at the right place, the drag and drop does work very reliably. Plus marks for no preferences and native WordPress interface, which makes it easy to add to a client site and get on with life. Frankly Simple Page Ordering is transparent enough that our team had forgotten it was installed. On the other hand, Simple Page Ordering is slow and clunky enough without a dedicated interface, we decided to go with CMS Tree Page View, which at least folds up the sections you are not actively editing.
With CMS Tree Page View, it’s important to eliminate as many draft pages as possible but that’s just a good idea generally as pages should not languish unpublished. After publishing what we can now, we’ll put together a section of unpublished pages under a single master page to clean up our own backend.
Alec Kinnear
Alec has been helping businesses succeed online since 2000. Alec is an SEM expert with a background in advertising, as a former Head of Television for Grey Moscow and Senior Television Producer for Bates, Saatchi and Saatchi Russia.
Leave a Reply