changing role using s2member conditional shortcode

I'm trying to use the following conditional inside a page but it seems the php code is still being executed inside the shortcode when admin hits the page:

[s2If current_user_is_not(administrator)]
[s2If current_user_is(s2member_level0)]
<?php $user = new WP_User(wp_get_current_user()->ID);
$user->set_role("s2member_level1"); ?>
[/s2If]
[/s2If]

does it look correct? I do have php execution plugin installed on the server.

If admin hits the page and that code executes, then admin role gets downgraded to level 1 which is not what I want.

Any suggestions?
COwebmasterAsked:
Who is Participating?
 
Sudaraka WijesingheWeb Application ProgrammerCommented:
According to the WP documentation there's a problem in nesting same type of short codes.
http://codex.wordpress.org/Shortcode_API#Nested_Shortcodes

I'm not familiar with the s2member plugin, maybe you an combine the two conditions using AND operator?
0
 
COwebmasterAuthor Commented:
I tried that but is still downgrades the admin to level 1
0
 
COwebmasterAuthor Commented:
Thanks!
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.