Jake Goldman by Jake Goldman download
requires 3.1+
55 votes
55,723 downloads
updated Sep 24 '11

Simple Page Ordering 1.0 for WordPress

Order your pages (and other hierarchical post types) with simple drag and drop right in the post list.

Simply drag and drop the page into your desired position! It’s that simple. No new admin menus pages, no dedicated clunky user interfaces. Just drag and drop on the page list screen.

To facilitate the menu order management on sites with many pages, the plug-in also adds a new drop down filter allowing you to customize the paging (pages per page) on the page admin screen. Your last choice will even be saved whenever you return (on a user to user basis and  post type by post type basis)!

The plug-in is “capabilities smart” – only users with the ability to edit others’ pages (i.e. editors and administrators) will be able to reorder pages.

Integrated help is included! Just click the “help” tab toward the top right of the screen; the help is below the standard help for the screen.

Note that this plug-in only allows drag and drop resort within the same branch in the page tree / hierarchy for a given page. You can instantly change the hierarchy by using the Quick Edit feature built into WordPress and changing the “Parent” option. This may be addressed in the future, but the intention is to avoid confusion about “where” you’re trying to put the page. For example, if you move a page after another page’s last child, are you trying to make it a child of the other page, or position it after the other page? Ideas are welcome.

You must have JavaScript enabled for this plug-in to work.

  1. simple-page-ordering screenshot 1

    Changing the paging (items per page)

  2. simple-page-ordering screenshot 2

    Dragging the page to its new position

  3. simple-page-ordering screenshot 3

    Processing indicator

53 Replies

  1. hey there!
    i always missed this feature! unfortunately it breaks the quick edit feature in wordpress. it’s not possible anymore to enter something in the text fields. do you consider expanding this functionality to posts too? that would be awesome!

    keep up the great!
    cheers.chris

    Christopher von BronsartApril 1, 2011 at 8:53 amReply
    • Jake Goldman

      Thanks for the bug catch! This should be fixed in a just released update. I’m not intending to add this to posts, since posts, by their nature, are ordered by their publication date. What would the use case be?

      Jake GoldmanApril 4, 2011 at 1:52 pmReply
  2. Thanks for this plugin, Jake. It’s exactly what I’ve been looking for. Anything special I need to do to make this work for custom post types? It’s currently working for Pages, but none of the custom post types I have defined (which are all heirarchical) have have the drag and drop enabled.

    Nate SeesApril 5, 2011 at 1:01 pmReply
    • Same problem here. Installed on a WP 3.1.1 site with a custom hierarchical post type, and drag and drop is not showing up for it. Any tips?

      Michael SnowMarch 19, 2012 at 6:38 pmReply
      • Jake Goldman

        Are you certain it’s been set as hierarchical? Do you have custom columns?

        Jake GoldmanMarch 23, 2012 at 10:09 amReply
        • I’m having the same issue. Is there a resolution to this? I have custom post types, and I can order them in the admin, but their order does not change on the site.

          RyanApril 11, 2012 at 12:30 pmReply
          • Jake Goldman

            You probably need to modify the part where you’re retrieving / showing the posts to sort them by menu_order.

            Jake GoldmanApril 13, 2012 at 12:55 pm
  3. Hi,

    I am playing around with your plugin since my site looks like having around 40-50 pages in the end.

    Looking at the documentation is seems to say that your choice of page numbers shown will be remembered – but it always seems to default to 20 pages whenever I leave and come back.

    Can this choice be coded in somewhere, so “show all” is the default?

    That aside, great plugin!

    Thanks.

    HughApril 20, 2011 at 9:11 amReply
  4. Great work! I got it working with custom posts.

    Dean OakleyApril 26, 2011 at 11:04 pmReply
  5. How about a modifier key? The page becomes a child of the page it is over if shift is pressed while dropping…

    RafalMay 2, 2011 at 10:31 pmReply
    • Jake Goldman

      Interesting idea, but I’m afraid that wouldn’t be obvious. I’m exploring some more intuitive alternatives.

      Jake GoldmanMay 5, 2011 at 9:42 pmReply
  6. Hey Jake, cheers for such great plugin man, it works like a charm!

    Love the idea of being able to see up to 100 pages ‘per page’, but it would be GREAT if you could save this setting in the DB so it always shows 100 (or whatever number you want) by default, instead of having to filter it. Also, what someone said re the ‘quick edit’ issue.

    But still, very solid. Thanks again :)

    CarlosMay 3, 2011 at 7:49 amReply
    • Jake Goldman

      I thought Quick Edit was fixed in my latest release. Can you explain?

      It’s supposed to save your preference for the filter as well… I’ll have to investigate that.

      Jake GoldmanMay 5, 2011 at 9:43 pmReply
      • My apologies, I think the Quick Edit thing is working all fine (not sure why I said it wasn’t, sleep deprivation!)

        However, the filter isn’t keeping the preference. I’m using WP3.1.2 and I’m not using and plugins that could clash with it.

        Hope this helps man

        CarlosMay 5, 2011 at 10:37 pmReply
  7. Hi there! Great plugin. Many thanx!
    Having some problems though. Working nicely on our local development server using WP 3.1.3. But has ordering issues online (same configuration).

    Does this plugin use server-dependent features somehow?

    DenniszJune 1, 2011 at 12:57 pmReply
    • Jake Goldman

      No, but low end shared-hosting servers often aggressively time out AJAX requests (which this relies on). I had some very bad experiences with Bluehost and timed out AJAX requests (across a variety of plug-ins), for instance.

      Jake GoldmanJune 6, 2011 at 5:23 pmReply
    • i am having problems too with the ordering…
      i am getting this error:
      Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 597642 bytes)

      i do have a 200+ on the website and i am using wordpress version 3.0.4.

      it seems that the ordering script is running all the pages everytime i try to move a page.

      i tried to filter the number of pages that are displayed before proceeding with the ordering as i thought it may only run the script on the displayed pages but sadly that didnt work!

      anyone has any suggestions?

      alexJune 7, 2011 at 8:50 amReply
  8. Hi Jeke, great plugin, it works fine, thanks!
    Do you think it would be possible to create such a plugin to sort the links (blogroll) always with drag and drop?

    MatteoJune 9, 2011 at 6:34 amReply
    • Jake Goldman

      Maybe, but it would need to be built from scratch. Not on my radar at the moment, unless a client wants to pay for it!

      Jake GoldmanJune 16, 2011 at 10:35 amReply
  9. Hi _Jake, it’s a great plugin, but i can’t make it work! I think is my theme : Atmospheric Augmentation…im tryin hard to make it work, also tryn others plugin…but always the pages are in alphabetical order….i hope u can help! Best regards…

    RalphJune 20, 2011 at 6:06 amReply
  10. Hi Jake, awesome plugin!! Thank you very much!

    Just what WordPress has been missing.
    Perhaps you can submit it for making it part of the core!

    One suggestion for improvement:
    If the plugin would check for current_user_can(‘edit_pages’) instead of current_user_can(‘edit_others_pages’), it would also allow users who can only edit their own pages *(but not others pages) to use the plugin

    I tried it out, and it works fine. Except .. when a user tries to sort someone elses pages, the cursor also changes to the drag-and-drop cursor, and the plugin will erroneously give the alert: “Items can only be repositioned within their current branch in the page tree / hierarchy …etc.”

    I think could be mend if the plugin would also check whether the current user is the post_author. Do you think that is doable?

    JanJuly 6, 2011 at 10:01 amReply
    • Jake Goldman

      The flaw in your logic is that when your changing the order of your page, you’re also necessarily changing the order of the pages around it. If you move your page to position 1, aren’t you moving the page with position 1 into position 2? It seems to me most use cases would demand that only a user capable of editing all pages should be able to reorder them.

      Jake GoldmanFebruary 22, 2012 at 11:54 amReply
Older Comments

Leave a Reply