Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
There is the module for Drupal 6 "Vertical Tabs". And we can enable or disable it.
In Drupal 7 it is a core function, and I can not find anywhere in UI how to disable it.
And what I have to do if I just don't want to see vertical tabs in forms?
Comment | File | Size | Author |
---|---|---|---|
#7 | verticaltabs_location.jpg | 47.33 KB | goldlilys |
#6 | disable_vertical_tabs.zip | 905 bytes | Dripman |
Comments
Comment #1
Dave ReidCorrect. There is no customization for it in D7 by design. Likely it would be provided by the vertical tabs module ported to D7.
Comment #2
Dripman CreditAttribution: Dripman commentedOk how can I disable vertical tabs functionality for now?
May be there is a function that i can add in my theme to disable it?
May be drupal_disable_tabs(); ?
or
function theme_name_tabs () {.............. return $result;}?
Comment #3
Dripman CreditAttribution: Dripman commentedSolution was found:
template.php :
Comment #4
entrigan CreditAttribution: entrigan commentedChanging to feature request, setting active. There are plenty of cases where vertical tabs are undesirable.
Comment #5
Dripman CreditAttribution: Dripman commentedThe same in module:
http://drupal.org/sandbox/Dripman/1077122
Comment #6
Dripman CreditAttribution: Dripman commentedOr here:
Comment #7
goldlilys CreditAttribution: goldlilys commentedActually can you have an option to disable vertical tabs for authenticated users only?
I want vertical tabs to be enabled for admins.
Since normal users don't get all the other options which needs vertical tabs, some fields are being displayed incorrectly (pushed to the right side as if there's a virtual tab on the left) when they add or edit new nodes.
Comment #8
deggertsen CreditAttribution: deggertsen commentedSubscribe. I would simply like a way to decide which fieldsets show up in the vertical tabs. Maybe there is already a way to do this but I haven't found one yet. I know with the Verticle Tabs module in D6 this option was available when editing content types.
Comment #9
marcingy CreditAttribution: marcingy commentedFeatures are added in head first
Comment #10
Everett Zufelt CreditAttribution: Everett Zufelt commentedFor comment #7, if there are places where v-tabs are not displaying correctly then please file a bug against the CSS component for that issue.
#4 pleasae provide use-cases.
Comment #11
HnLn CreditAttribution: HnLn commentedUse cases:
* I want to be able to order / group items that belong together (publishing and authored by, menu settings and pathauto, ...).
* I just don't like the ui of vertical tabs and prefer them in a left column (e.g. nodeformcols or panel forms or ds forms).
Good news: with http://drupal.org/project/rel field_group can turn the vertical tabs in e.g. fieldsets.
Comment #12
jcassano CreditAttribution: jcassano commentedI don't think this should be marked "works as designed". Vertical tabs don't make sense (and look extremely awkward) if a user only has permission to edit the data contained within one vertical tab. Why use vertical tabs when there's only one vertical tab? e.g. http://i.imgur.com/iLHv9.png
Comment #13
deggertsen CreditAttribution: deggertsen commentedI agree. This should not be "works as designed" as there are use cases where you may not want vertical tabs. If this is a "wont fix" item that's different, but seeing as there are people who want this feature I believe it should be an active issue.
If someone can explain a way to disable them then we can close this issue, but until then it should remain open. Maybe it could be marked as a lower priority item though.
Comment #14
vood002 CreditAttribution: vood002 commentedThe workaround in #3 worked for me.
Depending upon your needs you may need to move all of the fieldsets back out of the 'additional_options' array.
Node Form Columns was able to move the additional_options array into the sidebar.
Comment #15
RogerRogers CreditAttribution: RogerRogers commentedI just found that:
$form['additional_settings']['#access'] = FALSE;
has, in effect, the same result as hiding the vertical tabs. Additional_settings includes all the settings in the vertical tabs, such as path, menu, etc. This assumes that you don't want to show any of the additional settings at all, you can also hide each setting/tab individually using a similar approach, e.g. $form['path']['#access'] = FALSE;.
For completeness, here is the code I have in my template.php file (I'm using a switch to only hide for a specific content type, you can remove to apply everywhere):
Comment #16
nagiek CreditAttribution: nagiek commentedThanks @RogerRogers!
Comment #17
adellefrank CreditAttribution: adellefrank commentedBe sure not to allow for the forms you don't realize you are processing, too, or you might get an "Undefined index: #type" error after adding your hook_form_alter() to your template.php file.
For example, I got this error because I hadn't allowed for the basic 'search_block_form'. And, to "fix" this error, I changed the first line of my if statement to ignore that form_id (see code below).
Comment #18
nod_Don't come up with crazy irrelevant tags please.
Otherwise, what #10 said.
Comment #19
HnLn CreditAttribution: HnLn commented#18, this is not an issue about vertical tags being broken (the reply in #10) but about being able to disable the vertical tabs altogether so developers can create a nicer user experience (in my opinion vertical tabs are not very good when it comes to UX and some use cases have been provided since then, #11, #12).
Comment #20
brianfisher CreditAttribution: brianfisher commentedIf you want to disable a specific vertical tab
Comment #21
aritra.ghosh CreditAttribution: aritra.ghosh commentedI dont know whether this issue is still open but I have created a module for this.
http://drupal.org/project/node_vertical_tab_elements
This module aims for cleaning up node edit forms but only when panels are used to override node edit forms.
This modules provides for disabling some or all of the components of node edit vertical tab components
and also rearranging them to any position in the page.
Comment #22
atiba CreditAttribution: atiba commentedthanks a lot RogerRogers! that worked just fine!
Comment #23
see15_aug CreditAttribution: see15_aug commentedOn #15
I know this solution but it is not working on server. What to do?
Comment #24
hazit CreditAttribution: hazit commentedI'm new to drupal and vertical tabs is proving one of those 'breaking points' where I'm inclined to pack the whole thing in and suffer with a stupid Wordpress site instead.
I have installed the microblog module and have the form in a block on the sidebar.
I now want to activate the Book module, but when I do that what I now know as a "vertical tab" appears in the block, and it appears impossible to switch off.
It seems this was easier to manage in Drupal 6. With Drupal 7 it seems something has been added without adequate, accessible means for novice users for managing those new 'features'.
The standard solution it seems is to instal yet more modules to solve this, which in this case seem to be Renderable Elements https://drupal.org/project/rel and Field Group https://drupal.org/project/field_group. This will likely mean yet more bloat to my instal, and more learning curve with many more hours invested in overcoming the simplest step. I'm all for learning, but in Dupal it seems to be hours and hours for the simplest tweak.
Probably these modules will turn out to be awesome, and I guess that's the way 'learning Drupal' goes, but it is frustrating to do this to solve such simple problems that appear to be engineered in as 'features' without adequate scope for novice users to adjust the settings.
Drupal has many great things, but there is still the sense that building websites like this should remain the province of professional developers - keeping them employed and everyone else excluded. Supposedly the whole Drupal idea is to make this accessible, but I am not always sure this is really borne out.
Comment #25
nod_if that is not solved on D8 we don't put it back to D7. and if you put it back to 7.x, set it to the dev version, not a fixed version.
Comment #26
hazit CreditAttribution: hazit commentedUpdate re griping at #24:
Installed Renderable Elements https://drupal.org/project/rel and Field Group https://drupal.org/project/field_group.
Seemed to fix the problem in my case. You can deactivate these modules again and the fix seems to stay.
Only burned through half a day on this one :-) Now to the next problem https://drupal.org/node/87545.
Comment #27
nod_Comment #28
HnLn CreditAttribution: HnLn commentedIsn't this already fixed in d8 ? D8 is going to use a right column instead of the vertical tabs ?
Comment #29
jerrylow CreditAttribution: jerrylow commentedBy using
$form['additional_settings']['#access'] = FALSE;
It actually won't allow the status and options to save, instead I have to set all the tabs individually:
Comment #30
Sk8erPeter CreditAttribution: Sk8erPeter commentedThere's a much simpler way to disable vertical tabs on a form, by simply changing the
$form['additional_settings']['#type']
variable's value to'fieldset'
in an implementation ofhook_form_alter()
orhook_form_FORM_ID_alter()
, if it's equal to'vertical_tabs'
.You don't need to change the access settings or walk the whole array recursively, the latter consumes unnecessarily too much resources.
That's all, of course, substitute
MYMODULEORTHEMENAME
to your own module's or theme's name (the latter in atemplate.php
file), andmy_form_id
to your form's id.You can also disable the vertical fields only for users who do NOT have the administrator role:
In case someone is interested, I attached a patch to Dripman's sandbox module: #2080739: Simplify the method of disabling Vertical tabs with just changing the $form['additional_settings']['#type'] to 'fieldset'.
Comment #31
joyceg CreditAttribution: joyceg commentedI am working on this issue.
Comment #32
Anonymous (not verified) CreditAttribution: Anonymous as a volunteer commentedIt took me quite a while to figure out preventing access to vertical tabs will render all nodes with status=0 when editing them. You should definitely NOT use this code:
$form['additional_settings']['#access'] = FALSE;
Thanks allot #29!!
Comment #33
joshuautley CreditAttribution: joshuautley commented#30 worked for us. Thank you!
Our use case was with the Bootstrap base theme. The vertical tabs looked odd #1 and #2 the anchor scroll behavior didn't work with our custom sub-theme.