Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

We're retiring the forums!

The SilverStripe forums have passed their heyday. They'll stick around, but will be read only. We'd encourage you to get involved in the community via the following channels instead:

General Questions /

General questions about getting started with SilverStripe that don't fit in any of the categories above.

Moderators: martimiz, Sean, Ed, biapar, Willr, Ingo, swaiba

Sorting tabs

Go to End

5 Posts   2080 Views


Community Member, 14 Posts

22 April 2010 at 9:50pm


I need to add a new tab to a Page (Main, Behavior, Todo, ...) but I don't want to add it to the end but insert it between "Main" and "Behavior".
Is there a insertFieldToTab instead of addFieldToTab or something else to custom re-sort the tab list?

Thanks in advance,


Forum Moderator, 5523 Posts

23 April 2010 at 8:53pm

Hmm off the top of my head and a quick look I can't see anything. In 2.4 I can see a changeFieldOrder() function on FieldSet which may be what your looking for.

Not completely sure if these will work but I think they may $fields->insertAfter(), $fields->insertBefore(). The tabs in the CMS are standard form fields so you might be able to move them round using those.

If you have any luck would like to hear what worked.


Community Member, 150 Posts

3 June 2010 at 12:28am

Have tried various options but suggestions don't seem to be working (unfortunately).


Community Member, 3 Posts

12 July 2011 at 1:06pm


it's as easy as one would guess - but i've searched for it like hours. Here is the solution:

First create a new Tab:

$fields->addFieldToTab("Root.Content", new Tab("Images"), "Metadata");

and then add whatever you want to your Tab:

$fields->addFieldToTab("Root.Content.Images", new Textfield("Test));

Hope it helps,



Community Member, 25 Posts

19 September 2011 at 11:04pm

That works, thank you peterk :)