Plugin Author
myCred
(@designbymerovingi)
Hi.
According to your list, Culture Cruiser requires minimum 32 points, maximum 20, Culture Crusaders requires 49 minimum and 33 max but all other are in the other way around (minimum first and max last). Is this how you have setup your ranks or just pasted the numbers in the wrong order?
Mission Complete 100 – 20000
Culture Captain 85 – 99
Culture Commander 64 – 84
Culture Champion 50 – 63
Culture Crusader 49 – 33 ?
Culture Cruiser 32 – 20 ?
Getting the Ball Rolling 8 – 19
Newbie 1 – 7
Thank you for getting back to me.
I have adjusted those ranks that were in the wrong order but it is still getting stuck at: Culture Cruiser even though I have 51 points.
I did notice something though. When I click the “Assign Ranks To Users” button it updates everyone’s rank correctly and I can see this by looking at all the users in the admin. But when I log in as that user it resets the user back to Culture Cruiser but their points remain the same.
Mission Complete 100 – 20000
Culture Captain 85 – 99
Culture Commander 64 – 84
Culture Champion 50 – 63
Culture Crusader 33 – 49
Culture Cruiser 20 – 32
Getting the Ball Rolling 8 – 19
Newbie 1 – 7
Thank you again.
Joe
Plugin Author
myCred
(@designbymerovingi)
Are users ranked according to “current” balance or “total” accumulated?
Can you confirm that you are using 1.3.3?
Hi,
Users are ranked according to their current balance.
Yes I am using 1.3.3 and using WordPress 3.7.1
Thank you.
Plugin Author
myCred
(@designbymerovingi)
And all these ranks are published and not drafts or private?
I can not replicate this issue in 1.3.3
Correct they are all published an not private.
Plugin Author
myCred
(@designbymerovingi)
So if I understand everything correctly, your users are sorted into their ranks but as soon as they login (for which they get points), they get moved to “Culture Cruiser” no matter how many points they have? You are also not getting any errors and you have no customizations that you use with your myCRED install?
That’s is exactly correct. I have however made some small customisations now that you mention it. But I only edited the Sidebar.php not the plugin at all. The Rank logo wasn’t showing so I had to add some code.
<!-- Sidebar -->
<div class="sidebar">
<?php
//Joe Code Start
$rank_id = mycred_find_users_rank( get_current_user_id(), true );
echo mycred_get_rank_logo( $rank_id ); ?>
<br />
<span class="myRankDisplay">RANK:
<?php echo mycred_get_my_rank(); ?>
</span>
<br />
<!-- Joe Code End -->
<?php // action hook creating the primary aside
thematic_widget_area_primary_aside(); ?>
</div>
Plugin Author
myCred
(@designbymerovingi)
Try changing your code to this:
<!-- Sidebar -->
<div class="sidebar">
<?php
//Joe Code Start
if ( is_user_logged_in() ) : ?>
<?php echo mycred_get_users_rank( get_current_user_id(), 'logo' ); ?>
<br />
<span class="myRankDisplay">RANK:
<?php echo mycred_get_my_rank(); ?>
</span>
<br />
<?php endif; ?>
<!-- Joe Code End -->
The mycred_get_users_rank is the function you should use to get your users rank details. As you can see in the documentation, it will return any rank detail you want.
The mycred_find_users_rank function is more costly to use and is only used when it is absolutely necessary to find a given users rank.
I also wrapped your code with a login check because get_current_user_id() will return zero for visitors and on each page load, myCRED will attempt to find the rank of user with that id. This way is you save on a lot of unnecessary database calls.
Hi Gabriel,
I have made those changes and it sort of fixed the issue. When I log in, it now keeps the correct level but when I gained points it would revert back.
So I deleted all my ranks and re-made them all and now it is all working as it is designed to.
Thanks for all your support on this topic. I guess if you are ever having problems that can’t be pin pointed, sometimes it is good to just start again.
Thanks again,
Joe
Plugin Author
myCred
(@designbymerovingi)
Hey Joe.
Excellent news and thank you for taking the time to update me on this.
Let me know if you need any further assistance.