
نوشته اصلی توسط
saman9074
با تشکر از پاسختون، ببخشید دو تا سوال دیگه داشتم من یک usermeta با نام score تعریف کردم( از طریق افزونه مدیریت کاربران) که توش امتیازات کاربران به صورت عددی ذخیره میشه چطوری میتونم تمام usermeta همه کاربران رو بگیرم و مثلا 5 نفر اول رو که امتیاز بیشتری دارند نام و نام خانوادگی یا نام کاربریشون رو نشون بدم؟
دومین سوالم هم اینه که چطور میشه جایگاه کاربر مورد نظرم رو بین همه ی این کاربران مشخص کنم؟ (منظور دادن رتبه عددی هست مثلا کلا 5 تا کاربر دارم نام کاربری test امتیازش 700 بین این 5 نفر چندمه مثلا اگه بالاترین امتیاز باشه میشه 1 اگر پایین ترین باشه میشه 5 به این صورت). پیشاپیش از پاسختون ممنونم
خواهش، نمایش 5 کاربر به ترتیب بزرگی score و نسبت رنک 1 تا 5 به کاربران :
کد PHP:
global $wpdb;
$rank = 1;
$result = $wpdb->get_results("SELECT user_id FROM $wpdb->prefix"."usermeta WHERE meta_key='score' ORDER BY meta_value DESC LIMIT 5");
foreach ($result as $s) {
$user = get_user_by('ID',$s);
echo 'Rank : ' . $rank . PHP_EOL;
echo 'Username : ' . $s->user_login;
$rank++;
}