Setting a unique SUCCESS destination URL based on selection in CUSTOM registration field

Anyone know if it’s possible to set a unique SUCCESS destination URL based on the user’s selection in a CUSTOM registration field I’ve created?

I’ve added a CUSTOM registration field to the registration form which asks the user to indicate their “experience level” with Internet Marketing. What I’d like to do is send the user to a UNIQUE destination URL immediately after they complete registration BASED ON what they selected for their “experience level.” For example, if they select option A in the “experience level” drop-down (custom registration field), I want to send them to destination page #1 (by using the success="/xxxxxx" attribute). But if they select option B in the “experience level” drop-down, I want to send them to destination page #2.

Similarly, I’d really like to add people to a unique MailChimp list based on their “experience level” selection as well. If they select option A in the “experience level” drop-down, I want to add them to MailChimp list #1. But if they selection option B, I want to add them to MailChimp list #2.

Any idea if this kind of thing is possible?

The only solution I can think of is…

  1. Ask new sign-ups to indicate their “experience level” BEFORE filling out the registration form… If they select option A, send them to registration form version A, and if they select option B, send them to registration form version B.

  2. New sign-ups who fill out registration form version A are made “level2” subscribers (for example) and are therefore added to the “level2” MailChimp list. New sign-ups who instead fill out registration form version B are made “level3” subscribers and are added to the “level3” MailChimp list.

This technically will work, I’m confident, but I’m not thrilled about using this approach as it will require a lot of re-work with the [s2If] codes I’ve already set up throughout the website… AND I’m not thrilled about the fact that “level2” users and “level3” users are really the same LEVEL (i.e. paying the same monthly fee) and yet are different user levels in my system.

Any advice or input? Thanks in advance.

I’m not thrilled about the fact that “level2” users and “level3” users are really the same LEVEL (i.e. paying the same monthly fee) and yet are different user levels in my system.

You’re getting too hung-up about the word “level”. In fact, you absolutely DO want your users differentiated by role. It will make things much easier in the longer run, even if you have to add a few new conditionals (though if you’ve used can and not is, you won’t need to add anything new anyway).

Surely you don’t need unique destination URLs at all. You just need to use the appropriate [s2If] conditionals on the regular destination URL.

Thanks for your feedback, Tim. I agree with you that “level” designations don’t matter all that much and can even be helpful.

Personally, I’ve had quite a lot of problems with the “can” s2If shortcodes. For some reason, they don’t seem to work flawlessly as they should. I’ve had enough issues with the “can” shortcodes that I’ve resorted to using [s2If current_user_is(s2member_level2) OR current_user_is(s2member_level3)] rather than using [s2If current_user_can(s2member_level2)].

If I do this and create a whole bunch of additional levels (3-4 different “levels” for the same membership type, just with different “experience levels”), my s2If shortcodes are going to get pretty ugly…

[s2If current_user_is(s2member_level2) OR current_user_is(s2member_level3) OR current_user_is(s2member_level4) OR current_user_is(s2member_level5) OR current_user_is(s2member_level6) OR current_user_is(s2member_level7) OR current_user_is(s2member_level8) OR current_user_is(s2member_level9)]

Has anyone else run into issues with the “can” shortcodes?

My understanding is that content inside [s2If current_user_can(s2member_level2)] xxxxxxx [/s2If] shortcodes should be visible to all users logged into an account that is level2 OR HIGHER (level3, 4, 5, 6, 7… 100), right? Am I doing something wrong?


Back to my original question, though, does anyone know if it’s possible to do what I’m wanting to accomplish WITHOUT using unique membership levels for each “experience level”? Thank you!

Yes, that’s right. I can’t say that I use them in more than a couple of situations, but I’ve had no problems with them. The only way you should have a different experience is if you’ve modded the roles using something like Capability Manager Enhanced.