This tutorial will show you how to achieve drag and drop ordering of downloads in Easy Digital Downloads. Downloads on your website (using the [[downloads]] shortcode) will be ordered exactly how you ordered them in the admin.

To make this super easy for us, we’re first going to install the Simple Page Ordering plugin. Once installed, there’s 2 things we need to do to get it all running. Copy and paste each function below into your child theme’s functions.php or custom plugin.

First we need to tell the post type to support page-attributes. This adds a “Sort By Order” to the download admin screen, where you can use drag and drop ordering with the Simple Page Ordering WordPress plugin.

Second, we need to modify Easy Digital Downloads’ [[downloads]] shortcode query so that it sorts by menu_order. We also want to make sure order is set to ASC (Ascending).

That’s it!


  1. Do you see this functionality at all possible if using a front end post editor? ie: Ninja Forms with Front End Editor add-on to edit Downloads on the front end. I’d love to be able to drag and drop reorder via the front end. Even just typing this out makes it sound so ridiculous though…

    I think I’ll probably end up going for a vendor setting to choose how the page will sort in the template.

    Any of that make sense? I should sleep now 😉

  2. Hi,
    Thanks for the info.
    I did exactly as described, but i can not drag the downloads.
    It does work for the pages though.

    Being not a ‘expert’ in PHP.
    I don’t include the <?php for both snippets. Right.

    Maybe i misunderstand where this plugin is used for.

    Thanks for your time,

  3. It should be made clear that this “Sort By Order” is another navigation link on top of the admin download list. I wondered for minutes why i was not able to drag and drop the items until i saw this new created link:-)

  4. I looked over this two times and tried it out twice a week apart, trying to figure out what the heck it does… screenshots would have been super helpful. Because the “sort” I’m looking for is the download FILES within the “Download”. For example, in the Downloads page it shows this song “All that Is” as the top one: yet on the front-end, it shows it on the bottom: “The Shift” which was 2nd in the backend, moved to the top on the front-end. So stupid. Wish the sort would be the same on the front-end as it is on the backend, and I wish the backend had an easy drag-and-drop interface to move around files as needed! Can you solve those two problems for me please?

Comments are closed.