A critical vulnerability was discovered in React Server Components (Next.js). Our systems remain protected but we advise to update packages to newest version. Learn More

Per Nergård (MVP)
Mar 18, 2016
  2640
(1 votes)

Order content types with drag and drop

A while back I did a custom plugin that allowed admins to reorder tabs using drag and drop. Another thing I always wanted to be able to do easier is to change the sortorder of content types and also set access rights.

It's possible today but it's a bit tedious with serveral clicks to get into the proper dialog and you don't have an clear overview how access rights are setup.

So I did another admin plugin for this. You can sort both page types and block types with drag and drop and you can easily manage access rights. If you don't want to use drag and drop there is two buttons to sort by either full name or type name. Full name is the type name prefixed with the GroupName property on the types ContentType attribute. The tables are sorted by sortindex which is what epi uses as standard both in admin mode and when creating a new content in edit mode.

Depending on your solution and how many types you have you may or may not want to use the GroupName attribute. Normally I don't use it so all page types is grouped below "Other" when creating a new page. 

When you hit save what the plugin does is change the sortorder index value according to the sort order in the plugin. It starts at 100 and uses step of 100. Both Save buttons processes both page and block types. 

See pictures below and you can get the code over at my Gist.

Image page types.jpg

Image block types.jpg

Mar 18, 2016

Comments

Please login to comment.
Latest blogs
Looking back at Optimizely in 2025

Explore Optimizely's architectural shift in 2025, which removed coordination cost through a unified execution loop. Learn how agentic Opal AI and...

Andy Blyth | Dec 17, 2025 |

Cleaning Up Content Graph Webhooks in PaaS CMS: Scheduled Job

The Problem Bit of a niche issue, but we are building a headless solution where the presentation layer is hosted on Netlify, when in a regular...

Minesh Shah (Netcel) | Dec 17, 2025

A day in the life of an Optimizely OMVP - OptiGraphExtensions v2.0: Enhanced Search Control with Language Support and Synonym Slots

Supercharge your Optimizely Graph search experience with powerful new features for multilingual sites and fine-grained search tuning. As search...

Graham Carr | Dec 16, 2025

A day in the life of an Optimizely OMVP - Optimizely Opal: Specialized Agents, Workflows, and Tools Explained

The AI landscape in digital experience platforms has shifted dramatically. At Opticon 2025, Optimizely unveiled the next evolution of Optimizely Op...

Graham Carr | Dec 16, 2025