Show or Hide Fields Based On Role

Support MB Conditional Logic Show or Hide Fields Based On RoleResolved

Viewing 15 posts - 1 through 15 (of 19 total)
  • Author
    Posts
  • #30543
    MartinMartin
    Participant

    Hi, I have a need to be able to show or hide certain fields based on user role.

    My specific scenario is that I have a Custom Field form which has dates and checkboxes. I want admins to be able to use the date fields to enter dates and a different role to be able to edit the checkboxes.

    Admin will access the form via the Dashboard against a CPT. The other roles will access it via a view in the frontend.

    So I don't mind how the fields are made to show or not show. It could be via the view (ie show the dates as their values and the checkboxes from the forms) but I can't see a way to do it there. It could be using Conditional Logic but that only seems to be for inclusion based on other form values. The Include/Exclude options have code for user role but this applies to the whole form rather than individual fields (that would be great if we had that level of feature at a field scope).

    Any suggestions?

    #30554
    Long NguyenLong Nguyen
    Moderator

    Hi Martin,

    The extension MB Conditional Logic does not support show/hide a field based on user role. You can use the extension MB Include Exclude to do that and separate fields for other meta boxes.

    #30560
    MartinMartin
    Participant

    As far as I can see from the docs you set the Include Exclude at the whole meta box form level rather than the individual field level. I need that functionality at the field level if that's possible.

    #30573
    Long NguyenLong Nguyen
    Moderator

    Hi,

    Thanks for your feedback. I'm going to inform the developer team to consider adding it to the to-do list for the future development of the plugin.

    #30589
    MartinMartin
    Participant

    Cool. Thanks. I'll split my fields out to 2 custom field groups for now so I can control them separately that way.

    #30622
    justdoit123justdoit123
    Participant

    please update, I also need that functionality at the field level if that's possible.

    #33855
    JasonJason
    Participant

    +1 for the need for this functionality.

    #36377
    Rebecca RobertsonRebecca Robertson
    Participant

    I also need that functionality.

    #36915
    vacdkvacdk
    Participant

    +1 for this
    It will make forms much easier to build

    #38352
    hello@twosixmedia.co.uk[email protected]
    Participant

    any news on this - I want to be able to hide some fields based on a user role - or a membership level maybe -

    #38356
    MartinMartin
    Participant

    As others are interested in this functionality this is how I went about what I need in the end:

    I took the PHP code and implemented it in Snippets (or in functions.php etc). This allowed me to set the 'required' setting for each field as a variable. I then got the user role in code before the form creation happened and set the variable accordingly.

    #38930
    brkardbrkard
    Participant

    hi..
    this should not be too hard to implement..

    and this should be a feature...also i need to hide some fields from some user roles...especially for settings page fields..
    +1 for this...

    #39913
    Alaan TVAlaan TV
    Participant

    I found a solution that may help; you can set the type of the field based on the role, like this:

    [
        'name' => 'My field',
        'id'   => 'my_field',
        'type' => current_user_can( 'administrator' ) ? 'text' : 'hidden', // Show only for admins.
    ],
    

    Here, the type of the field will be hidden for none admin users and text for administrators.

    #42847
    beepopbeepop
    Participant

    +1 - need this, especially for Meta Box User Profile

    #43606
    YasmineYasmine
    Participant

    +1 - very, very needed for my form.

Viewing 15 posts - 1 through 15 (of 19 total)
  • You must be logged in to reply to this topic.