You can override this method in your AdminSite
class to implement this any way you’d like. That method exists as a published API so you would be able to rely upon it, subject to the normal Django deprecation policy.
You might also be interested in an earlier discussion on this topic - see Reordering list of models in Django Admin