Trying to load different menu for different users

I was wondering if you could help me with adding certain menus to certain users.

I have created Memberships > Protected Content > Members.

I have created different menus and have certain pages of these menus protected for set content and users affiliated with that content.

I was wondering how am I able to set the selected menu to show for the user on login? So each member sees their specified menu after logging into the site?

Any help would be greatly appreciated. Thanks in advance, all the best.

  • Patrick

    Hi there @Dallas

    Welcome to the forums, glad to have you aboard!

    You don't need to create entirely different menus for each membership you make in Protected Content.

    You only need to enable or disable access to the specific menu items for each membership.

    First, under Protected Content > Comments, More Tag, Menus, select all the menu items you want to be protected, regardless of the memberships.

    Then, in the settings for any specific membership, enable access to the protected menu items you want users to be able to see when they're on that membership.

  • Dallas

    Thanks for the swift and detailed reply Patrick!

    One more question as this is what I'm trying to achieve.
    If I setup the menu as mentioned above, will these fields still be visible to others that shouldn't have access to them?

    Ie if company A has access but company B does not, is the link still visible in the menu however they will not be able to access it?

    I am trying to essentially have one link for the user that will show them only their information when clicked.

    If I need to explain any better please just let me know.

  • Dallas

    Thanks for the reply @Ash,

    Not a problem let me try to clarify.

    Firstly, on the site you have to sign in before anything is viewable, as the site is set to private.

    I would like to have a setup like this if possible:

    Membership Name
    Content Type 1
    User 1
    Content Type 2
    User 2

    Where there is a page set-up when a user logs in to the site:

    They see a link in the navigation that when clicked shows them their content and only theirs.

    When User 1 logs in and they visit the link only Content Type 1 information is shown to them.

    When User 2 logs in and clicks the same link Content Type 2 information is shown and Content Type 1 information is not visible to them.

    Perhaps this can be done without even making a new navigation?
    Or you may have a better suggestion on how I can make this function?

    I hope that clears things up a bit more.

    Thank you in advance.

  • Patrick

    Hi again @Dallas

    I hope you're well today!

    By enabling the Advanced menu protection addon in Protected Content, you can set different menus to display to different memberships.

    However, the plugin does not have the functionality required to replace page content based on the ID of the logged-in user.

    But this plugin can do that:
    https://wordpress.org/plugins/eyes-only-user-access-shortcode/

    You can show or hide any portion of post/page content based on usernames, user roles, capabilities, custom groups, and/or logged-in status using a simple shortcode generator. It's a very simple, yet very powerful, plugin (I've used it in a couple of projects and it works just fine).

    So you could have a menu item that only appears to logged-in users on your chosen membership. And, on that page, have content that dynamically changes depending on the conditions you set in the Eyes-Only shortcode. You can even nest multiple conditions to create truly dynamic content delivery on a single page.

    For example:

    [eyesonly username="tester" logged="in"]
    This is only visible to logged-in user: tester
    [/eyesonly]
    [eyesonly username="newuser" logged="in"]
    This is only visible to logged-in user: newuser
    [/eyesonly]
    [eyesonly level="administrator,author" logged="in"]
    This is only visible to logged-in users with either the "Administrator" or "Author" role [eyesonlier level="administrator" logged="in"] And this nested content is only visible to logged-in admins [/eyesonlier] More stuff visible by either admins or authors
    [/eyesonly]
  • Dallas

    Thanks again Patrick for the detailed response.I will take the suggested plugin into consideration.

    I have attempted to rebuild my memberships from scratch with your suggestions with the advanced menu options.

    I'm having an odd situation happening though.

    Even when I tell it to load a specific menu, it goes and loads the default navigation. So in turn none of the protected content created and added to those navigations even shows up.

    I haven't been able to get any of the "protected content" to show up since I installed it, unless I was logging in as an admin.

    It doesn't seem to want to catch when I login with the designated users tied to a membership.

    I attempted this on both the multiple membership and the simple.

    Is there any possibility that i could get remote support access and have somebody take a quick gander?

    Perhaps I am missing a step and do not know it yet.

    A gentleman was going to take a look through remote access before through the dashboard but I have not heard back yet.

    Thank you in advance, sorry for the hassle.

  • Sumit Kumar

    Hi @Dallas,

    As mentioned in this thread: https://premium.wpmudev.org/forums/topic/protected-content-not-viewable-for-membership-users#post-778966
    Support access is not working as we have been redirected to login form.

    Is there any security plugin that is preventing us from logging?
    Alternatively, you could send credentials in the following:

    - Mark to my attention, the subject line should contain only: ATTN: Sumit Kumar
    - Link back to this thread
    - Include WordPress admin access details
    - Include any relevant URLs for your site

    On the contact form, select "I have a different question", this ensures it comes through and gets assigned to me.
    https://premium.wpmudev.org/contact/

    Looking forward to resolve your issue.

    Warm Regards,
    Sumit