我试图在我的Wordpress网站上显示“十大排行榜”用户列表,这些用户使用流行的MyCred插件获得了最高积分。我发现的代码运行良好,但是,不符合我的意愿,作为管理员,我自己总是在积分榜上名列前茅,因为我一直在网站上帮助所有人,从而获得积分。但是,我不想与其他用户作为管理员竞争。
PHP的新手,我在确定添加不包含我的内容时遇到了问题-使用我假设的Wordpress用户ID(#1)-当它生成“前10名”列表时
。这里是the complete code,我正在与我在GitHub上找到的一起工作,但是我认为我需要稍微修改的相关一小段代码就在这里:
// Construct unorganized list for each row
echo '<ul class="mycred-this-weeks-leaderboard">';
foreach ($leaderboard as $position => $data) {
echo '<li>';
$user_info = get_userdata($data->user_id);
$tempname = $user_info->user_login;
$lowerstring = strtolower($tempname);
$stringwithoutspace = strtr($lowerstring, ' ', '-');
$username = preg_replace('/[^a-zA-Z0-9_]/', '-', $stringwithoutspace);
?>
<?php if (!empty($username)) { ?>
<div class="leaderboard-info-block">
<span class="leaderboard-avatar"><?php echo $avatar = get_avatar($data->user_id, 49); ?></span> <span class="leaderboard-profile-link"><a href="<?php echo 'http://chillopedia.com/forums/users/' . $username; ?>"><?php echo $data->display_name; ?></a></span> <br>
<span class="leaderboard-user-points"><?php echo $mycred->format_creds($data->total); ?></span>
</div>
<?php
}
echo '</li><br>';
}
echo '</ul>';
谢谢您能给我的任何帮助! :-)
答案 0 :(得分:0)
如果$ data-> user_id为1(您的用户ID),只需跳过循环内的代码
if($data->user_id == 1){
continue;
}
要对您的代码实施该代码:
echo '<ul class="mycred-this-weeks-leaderboard">';
foreach ($leaderboard as $position => $data) {
if($data->user_id == 1){
continue;
}
echo '<li>';
$user_info = get_userdata($data->user_id);
$tempname = $user_info->user_login;
$lowerstring = strtolower($tempname);
$stringwithoutspace = strtr($lowerstring, ' ', '-');
$username = preg_replace('/[^a-zA-Z0-9_]/', '-', $stringwithoutspace);
?>
<?php if (!empty($username)) { ?>
<div class="leaderboard-info-block">
<span class="leaderboard-avatar"><?php echo $avatar = get_avatar($data->user_id, 49); ?></span> <span class="leaderboard-profile-link"><a href="<?php echo 'http://chillopedia.com/forums/users/' . $username; ?>"><?php echo $data->display_name; ?></a></span> <br>
<span class="leaderboard-user-points"><?php echo $mycred->format_creds($data->total); ?></span>
</div>
<?php
}
echo '</li>';
}
echo '</ul>';