Question

I am currently using a plug-in called Wishlist member. It allows you to create membership levels in WordPress. I want to be able to display different content on a page depending on the membership level of the viewing user. Something like this -

<?php global $current_user; get_currentuserinfo(); 
if ($current_user->user_level == 10 ) { ?>
  Admin Stuff (In my case I left this blank)
<?php } else {   ?>
  Stuff Seen By Visitors
<?php } ?>

But not just for the admin. I have found that this plug-in create creates these for each member level "wpm_access[1296320588]" and "wpm_level[1296320588]". Any ideas on how I could check the current user against this?

Thanks!

Was it helpful?

Solution

there is a lot of discussion about this in wishlisMembers support forum but the developers over there ignore it. Any way try this:

// get the current user level from WP more important is global $user.
$user = wp_get_current_user();

// Get user levels from WishlistMembers
$levels = WLMAPI::GetUserLevels($user->ID);

//then run the check for the level you want like this:
if(in_array('silver', $levels)){
  //  PRINT OUT THE silver LEVEL stuff here
}
elseif (in_array('gold', $levels)){
   // PRINT OUT THE gold LEVEL stuff here
}

Simple.

OTHER TIPS

Sorry for not replying to the previous answer, but I just do not know how. Thanks Bainternet for your answer, but it has, however, a huge flaw. Problem is if you have a Cancelled / Ended membership in WL Member, it will still show up in the $levels array. This ends up in being a huge security flaw. How to fix this?

EDIT TO THIS POST: Found how to solve this (WLMAPI::GETUserLevels documented over here http://wishlistproducts.com/api/api1/ ) You will need to set the int $cancelled to 1 not to get the cancelled subscriptions in your array.

EDIT TO THIS POST AGAIN: I appologise, the error I was having was related to ended subscriptions, not cancelled ones. The default parameter of $canceled is 0 and that means do not return cancelled subscriptions which is the general intended behavious. Last night I had too much code that's why i started to speak wrong. Too bad you cannot set the function not to return ended subscription levels.

Licensed under: CC-BY-SA with attribution
Not affiliated with wordpress.stackexchange
scroll top