I had my replacement menus working for varied member levels

Hi,

I had my replacement menus working for varied member levels and since updating the plugin to the latest version (1.1.1) they seem to have been wiped out and a new system has been introduced with no supporting documentation. I have no idea how to replace the menus for any given membership now. Any help would be appreciated.

Thanks

  • Michelle Shull

    Hey there, Ash! Sorry to hear you're having struggles here.

    Would you be willing to let me log in and have a closer look? There were some changes in Protected Content with the most recent update, we're catching up with those as well, but you should still be able to control menu access based on access level. If this is ok, just grant me temporary admin access to your site by clicking "Grant Access" button in the WPMU DEV Dashboard Settings from the following path and reply on this thread after granting it?

    Admin -> WPMU DEV -> Support -> Support Access Tab

    If you have not installed WPMU DEV Dashboard plugin yet, kindly do that here : https://premium.wpmudev.org/project/wpmu-dev-dashboard/ and then allow access as per the above process.

    Can you give me a brief outline of how your menus were working before the update? Were you using multiple menus, or controlling menu items individually?

    Thanks, Ash! We'll take a closer look here and see if we can get everything working again.

  • ash

    Hi,

    Access is granted so please feel free to take a look. Do you have my details I take it?

    I have 5 membership plans as follows:

    Annual membership
    Season 1 pass (3 months)
    Season 2 pass (3 months)
    Season 3 pass (3 months)
    Season 4 pass (3 months)

    I am in the process of creating 2 dashboards to cater for seasonal and annual members so I originally had 3 individual menus working as follows:

    Guest Menu - for everyone
    A Member Menu - for logged in Annual members only
    S Member Menu - for logged in Season members only

    Now the system has changed quite dramatically and I have no idea what it all means. Can you explain it to me please?

    Thanks,

    Ash

  • Michelle Shull

    Hey there, Ash!

    It looks like support access didn't quite go through here, would you mind trying it again? With support access, I don't need your details, I can temporarily view the site as you, without needing my own credentials. Once access expires, we're not able to get back in at all, so it's all in your control. Actually, though, I think I can walk you through this without support access.

    Protected Content did pull a big switch on us, I'm still adjusting to the changes myself. The support team actually learned of the changes at about the same time the members did, so we're still digging in and figuring things out. I think I can explain how this works for you, however. And I'll even throw in some screenshots for funsies.

    1. Make sure you have the Advanced Menu Protection addon active in Protected Content > Addons.
    2. Click the "details" link at the bottom of the Advanced Menu Protection addon panel. (Screenshot #1, I feel like my description is weak here.)
    3. Choose the "Replace Menus" option. (Screenshot #2)
    4. Go to Protected Content > Protected Content > Replace Menus.
    5. You'll see your different memberships listed across the top, and all of the available menus on your site listed, as well as who has access. (Screenshot #3)
    6. Hover over any menu to see a link that will allow you to add membership levels who can access the menu. (Screenshot #4)

    Does this clear it up at all? I'm happy to go into any more detail here that you might need.

    Thanks for your question!

  • ash

    Hi,

    Thanks for sending through. That's strange as I have the access open until the 25th (screenshot1). Is there anything I should do to enable this further?

    Unfortunately I have already gone through this addon with no joy. It doesn't really make any sense to me and with no help guides I'm running at a loss.

    I add the relevant memberships for each of the menus but this doesn't actually replace the menu. The menu column still says '(No replacement)' (Screenshot 2).

    As far as I can see, the only way of changing that column is by selecting the 'All' tab from the list of available members running along the top. There are drop downs that now appear in the 'Replace with this menu' column (screenshot3) but it's unclear why I would need to replace these menus with something else if I've just applied specific access to them.

    I have tried replacing them with every combination available, trying to see what on earrth is happening but the menus do not appear at all. Regardless of whether I'm logged in or a visitor, I only get my primary menu visible at all times. What I need to do is essentially replace the primary 'Guest Menu' for every type of member, of which there are five types.

    When I look back in my membership details, the applied acces to the menus do not display either (screenshot4).

    I'm not sure if this is related but when I setup my memberships before this update they created a duplicate (FREE version) for some reason. You'll see in my screenshots the membership tabs running along the top. I have just deleted them as I had turned them off anyway but wasn't sure if this was a bug or would have caused a confliction as now when I add memberships, they only create one, as expected. It's probably unrelated but it was confusing nonetheless.

    Could you perhaps ask the developers how this is all supposed to work so I can fix please?

    Thanks so much for your help

    Ash

  • Michael Bissett

    Hey @ash, thanks for your patience!

    We're going to need to have a deeper look at this here, could I ask you to send in the following via our contact form:

    - Mark to my attention, the subject line should contain only: ATTN: Michael Bissett
    - Do not include anything else in the subject line, doing so may delay our response due to how email filtering works.
    - Link back to this thread
    - Include WordPress admin access details (login address, username & password)
    - Include FTP log-in details (hostname, username & password)
    - Include any relevant URLs for your site

    On the contact form (linked to below), please select "I have a different question", this ensures it comes through and gets assigned to me.

    https://premium.wpmudev.org/contact/

    Thanks a bunch!

    Kind Regards,
    Michael

  • ash

    Hi Michael,

    Just in case there is not a fix on this, I was thinking of another solution but I'm guessing it's a lot more work and not feesible in the time frame I have - perhaps you could tell me if this is possible...

    The premise of my needing mutiple menus was simply to cater for linking to a custom dashboard specific to each individual membership plan. These dashboards allow the user to navigate off to their allocated training pages, rewards pages (if applicable to that membership) and allows for targeted news alerts to each given membership.

    However, would it be possible to have a link to the dashboard appear in the navigation menu that would direct logged in users to their dashboard that is dynamically populated when the user logs in? During the login, we could determine what dashboard that user has access to and spits the link to that dashboard page out into the menu. This would then mean that only two menus would need to be used. A 'Guest' menu and a dynamically populated 'Member' menu.

    I have been going through something similar in regards to redirects after the login / signup process (essentially bypassing the 'Accounts' page when a user logs in or signs up) and taking users directly to their dashboard. I'm now able to direct users from each of the 5 member plans to each of their associated dashboards directly after login/signup.

    The thread for that particular issue can be found here - https://premium.wpmudev.org/forums/topic/how-to-direct-specific-members-to-their-relevant-dashboards?replies=33#post-851789

    Your colleague, Hoang was dealing with that issue utilising the MU Plugin with the code you will see in the above thread also. I'm wondering if this might be a possible route to getting this solution to work?

    I'm just trying to find the easiest and quickest way to get multiple menus to work after the new update so any help you can provide would be hugely appreciated. Time is of the essence after all.

    Best regards,

    Ash

  • Philipp Stracker

    Hey Ash,

    I've just read through your descriptions and as I understand it you want this:
    There is 1 menu region on your page and you want to display 1 of 3 possible menus inside this region. The menu should be selected depending on the users membership.

    Well, the menu protection has changed with release of 1.1.0 and the use-case I've just described does not yet work with the Advanced Menu Protection in the current state. This is still on the roadmap for a later update... However, I've just updated the priority of that feature so it will not wait for too long in the queue

    Alternative solution
    For now I suggest you use a different approach for your menu system:
    1- Create one big menu that contains all items for Guests/Annual/Seasonal members
    2- Create a Guest Membership (create a new membership, you'll see a "Guest" type there)
    3- Disable the Advanced Menu Protection Add-on
    4- In Protected Content > Tab "Menu Items" assign the guest menu items to the Guest membership and the other menu items to the correct membership

    The only disadvantage is that maybe the menu can get quite big if you have a lot of menu items and you have to remember to assign new menu items to the correct membership.

    Let us know if this worked for you or if you'd like us to set up that menu for you via Support Staff Access. If there is anything else we can help you with please tell us

    Thanks, Philipp

  • ash

    Thanks for your response Philipp,

    You are correct in that I have one global navigation region which had 5 variations depending on the users member access. This was simply to account for the lack of a dashboard feature in 'Protected Content' and provide my users a 'portal' to access their accounts and training content in a simple location.

    I will try and follow your guides on the alternative solution but could you provide an eta on the fix for the current system? I'll get back to you with my findings but it sounds like what i did with my first attempt at fixing myself.

    Could you also explain why the change to this new system and the impact it would have on users was not stipulated before the update? This is a complete overhaul of the system that proceeded it and I lost everything relating to it. I wouldn't mind so much if it worked but the new system actually doesn't make any sense. Or can you explain the logic behind this system? It's had detrimental impact on how my site now functions, looks and will be percieved by the 6000+ people we are opening to on Friday.

    I had it working at the weekend which is the killer. If all else fails, can I not revert back to the older version also?

    If you could get back to me on everything from the above I would appreciate some clarity on this.

    Regards,

    Ash

  • Philipp Stracker

    Thanks for giving it a try

    I know the update to 1.1.0 was huge - almost everything in the plugin changed due to the major UI redesign. And as blunt as it may sound: While testing and fixing a thousand issues we did simply forget to review some of the less common features, such as the Advanced Menu protection...

    As for the Dashboard you can also go into a different direction, mainly I have two alternatives in mind:

    Option A)
    You can create a single WordPress page that contains all links and details that should be visible for the current user. Hide/Show the contents to the user by using the shortcodes [ms-user type="guest"] and [ms-protect-content id="123" silent="yes"]. Example:

    [ms-user type="guest"]
    ...Links for the guest user...
    [/ms-user]
    [ms-protect-content id="100" silent="yes"]
    ...Links for members of Membership 100...
    [/ms-protect-content]
    [ms-protect-content id="200" silent="yes"]
    ...Links for members of Membership 200...
    [/ms-protect-content]

    Option B)
    Create a single WordPress Page for each memberships dashboard (e.g. dashboard-guest, dashboard-100, dashboard-200)
    Then protect each dashboard so only the correct members can access that page (Protected Content > Tab "Pages")

    Add this code to your website, e.g. as a new plugin. This will redirect the user to the dashboard right after the login:

    add_filter( 'ms-ajax-login-redirect', 'ms_custom_redirect', 10, 2 );
    function ms_custom_redirect( $redirect, $member ) {
        if ( $member->has_membership( 100 ) ) {
            $redirect = home_url( '/dashboard-100' );
        } elseif ( $member->has_membership( 200 ) ) {
            $redirect = home_url( '/dashboard-200' );
        }
        return $redirect;
    }
  • ash

    Hi Philipp,

    Thanks for taking a stab at this. However, I'm really not satisfied with that level of complacency. Regardless of forgetfulness, is there not a sign off process on product deliverables?

    we did simply forget to review some of the less common features

    If less common features are forgotten, they shouldn't be featured, period. You not only damage your own reputation but the reputation of your customers. I've wasted a lot of unneccessary time and energy on this issue that was working perfectly a few days ago, simply due to forgetfullness.

    Regarding your options - I do thank you for providing these to me but option A won't work as I have numerous pages already designed which need to be available for specifc memberships.

    I have already got option B in place. This however does not solve the menu issue in question.

    I did ask previously if something similar to your option B could dynamically popluate a link in each users menu that would link to their respective dashboard. The redirect is essentially what the link is doing, you'd just be calling the appropriate dashboard link based on the user id and printing it onscreen / in the menu. Do you know how to do that or know anyone who might be able to get that to work? It seems odd that we can't add dynamic links in the menu if most of the 'Protected Content' pages are themselves.

    Can shed some light on the above for me please?

  • ash

    Alternative solution
    For now I suggest you use a different approach for your menu system:
    1- Create one big menu that contains all items for Guests/Annual/Seasonal members
    2- Create a Guest Membership (create a new membership, you'll see a "Guest" type there)
    3- Disable the Advanced Menu Protection Add-on
    4- In Protected Content > Tab "Menu Items" assign the guest menu items to the Guest membership and the other menu items to the correct membership

    These words have saved me from despair. Philipp - you are a legend.

    All working!