Challenge with Membership levels using member with no subscriptions

I have a requirement for a multi-level user membership site. I have the membership plugin installed. Visitor access is easy to control but there doesn't seem to be a way to control members who don't have a subscription.

Let's say I have two levels, A and B.
Users can register and I can automatically assign a subscription level such as "free" to anyone who doesn't pay. In theory this should get them no access to subscription plans A and B. I can create rules to cover this restriction. However, if the user goes to subscriptions and removes the free subscription, suddenly they get full access to stuff that they should not. I don't seem to have a way to make the free subscription so that the user cannot remove it.

So is there a way to control access to a member who has no subscription level? Or is there a way to disable a user from removing their default subscription (make a free subscription mandatory)?

  • rickgn
    • WPMU DEV Initiate

    After doing some more testing on this I found that one subscription level tends to overwrite the others. So if I have subscription A, the rules will override B if B was created after A. It seems to run the rules in sequence of the subscription ID or level ID. I would have expected rules to be additive, meaning that rules B add to rules A if both A and B are positive rules.

    For example: page1, page2, page3

    Page1 has levels VISITOR only.
    Page2 has levels A and B but NOT visitor..
    Page3 has levels B only.

    I used positive rules on all three pages. I also tried to use menu positive rules.

    In this scenario, subscription level B gets no access to pages not allowed by A, although there is no rule preventing it.

    So basically what I'm looking for here is a way to MOVE between registration levels instead of add another level. This should create a hierarchy such as silver, gold, platinum, etc. Each level has additional access privileges.

    I don't see any way to accomplish this. Please help.

    Thanks,
    Rick

  • aecnu
    • WP Unicorn

    Greetings Rick,

    Thank you for this great question and a significant item to bring up.

    There does seem to be some confusion regarding positive and negative rules.

    Please try reversing this and setting up negative rules instead and let me know how it works out then with restrictions and such.

    Regarding the stranger level, which someone has access to with no subscription, have you set up negative rules for them?

    And I am not aware that members can remove there subscription.

    Are you perhaps using the same browser for administration as well as for testing?

    Please advise.

    Cheers, Joe

  • rickgn
    • WPMU DEV Initiate

    Joe,
    For the stranger role I use "visitor". Yesterday I made the following changes to my scenario:

    strangers: visitor role

    registered free users: registered role. This role is set to private, so the users cannot remove it.

    I was using positive rules for bronze, silver, gold, platinum levels. Bronze level rules override silver, gold, platinum. This is true for both positive and negative rules. For example: Bronze negative rule to page-B will always apply because the user is a member of BOTH bronze and silver. I have no way of allowing the user to switch levels once they are in a subscription. If they cancel, the subscription continues until the end of its serial term. This could be up to 30 days in which they still have Bronze, have purchased Silver, and cannot access Silver.

    My only work-around with Membership package is to use shortcodes in every page. This is fine on a small scale but this will not work as my content increases to hundreds of pages. It's simply too difficult to manage and I cannot use a marketing skillset person to manage packages; it would be more like a developer.

    So what I really need is the ability to move a subscriber to another level. For example, upgrade / downgrade. I saw this capability in S2. S2 seems to be very powerful but appears to be way too developer-centric for me. All that is really needed is a UI that shows the upgrade progression. For example, if I am at Bronze I would have the option to upgrade to silver, gold, platinum. If I am at Gold I can only upgrade to platinum. In the end-user registration panel, this setting should be recognized and allow me to upgrade.

    Also, if you take a look at Paid Memberships Pro package, they have inclusive rules. Let me give you an example:

    In WPMU Membership: If (has bronze) then (access ....) else if (has silver) then (access...)

    In other packages: If (has bronze) OR (has silver) OR (has gold)....

    Notice the OR statement in that logic. I'm finding this to be impossible in Membership without using shortcodes explicitly on every page.

  • aecnu
    • WP Unicorn

    Greetings Rick,

    Thank you for that fantastic detailed input there, though I admit I did nto go completely through it as I found what should be a show stopper making the rest a moot point until this issue is resolved:

    because the user is a member of BOTH bronze and silver

    I am 99.999% sure that members cannot/should not be able to be in two levels at the same time or simultaneously at any point in the process.

    Therefore at least for this particular issue I am going see if I can get the lead developer @Barry in here to clarify this for us (you and I).

    Though this may take a bit longer then a normal ticket, I will try to get him in here asap.

    Cheers, Joe

  • Barry
    • DEV MAN’s Mascot

    This role is set to private, so the users cannot remove it.

    That's not what the private setting is for - it's so it doesn't show on the signup forms in the public end, but by Role I am assuming you mean subscription.

    So what I really need is the ability to move a subscriber to another level. For example, upgrade / downgrade.

    Does this mean that the upgrade buttons aren't showing for your users on the accounts page?

    Notice the OR statement in that logic. I'm finding this to be impossible in Membership without using shortcodes explicitly on every page.

    Yes, membership is AND - so if someone is on level one they could have access to page 1 and page 2, if they are then added to another level they would *also* have access to page 3 and page 4, etc...

  • rickgn
    • WPMU DEV Initiate

    I am still waiting for an update to this module. I cannot move forward without a fix. There is another thread open regarding an invitation code bug. That one is critical. This issue is a serious limitation but not necessarily a blocker. Honestly, I've been evaluating other packages due to the limitation in this thread.

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.