I know that I can remove a tab from inside the CMS using something like this:
$fields->removeFieldFromTab("Root.Content.Main","Content");
But how can I go about removing a whole tab?
This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.
Please use forum.silverstripe.org for any new questions
(announcement).
The forum archive will stick around, but will be read only.
You can also use our Slack channel
or StackOverflow to ask for help.
Check out our community overview for more options to contribute.
I know that I can remove a tab from inside the CMS using something like this:
$fields->removeFieldFromTab("Root.Content.Main","Content");
But how can I go about removing a whole tab?
Hi dan
try this inside your getCMSFields function:
$fields->removeByName("TabName");
that should do it :)
Hi I am also try to remove the Help Tab to no avail I have tried what you suggested aram, but it still does not work!!
Also I have tried to add this line inside of my getCMSFields():
$fields->removeFieldFromTab("Root","Help");
and it is not working either, can anyone help ?
I've worked it out.
If anyone is interested you can suppress the Help tab by commenting the CMSMenu::add_link('Help'.....) that is locateed inside of the LeftAndMain.php in the cms folder.
If you want to remove one tab (Main) from Content:
$fields->removeFieldFromTab('Root.Content', 'Main');
If you need to remove multiple tabs (Main, OtherTab, ThirdTab) from Content:
$fields->removeFieldsFromTab('Root.Content',
array(
'Main',
'OtherTab',
'ThirdTab'
)
);
Better use this in your _config.php:
CMSMenu::remove_menu_item('Help');
Maybe, but that if possible you should create a user that has access to only certain tabs using the Security section instead of hacking the code.
Of course if you are talking about "Help" that has to be done as you describe or if the user needs admin access then again, yes to the code hack.