رفتن به مطلب

افزودن امتیاز به هر کاربر


پست های پیشنهاد شده

سلام

من یه کدی میخوام که تو بخش مدیریت یه قسمت بازشه یه مدیر بتونه به کاربراش یک امتیاز از 1 تا 10 بده (نه به مطالب و نظرات) و کاربر نیز امتیاز خود را در ساید بار در یک باکس مشاهده کندممنون میشم سریع لطف کنید

لینک به ارسال

قوانین را بخوانید زمان انتظار برای پاسخ 24 ساعت است نه 14 دقیقه!! شما نباید برای دریافت پاسخ اسپم بفرستید یا پیام خصوصی بدهید هنوز یک ساعت از سئوالتان نگذشته هر دو کار را انجام داده اید در صورتی که کدی که می خواهید بیش از یک ساعت زمان می برد تا نوشته شود و تست شود و ارائه گردد در هر حال منن به احترام قوانین تایپیک را بی پاسخ می گذارم منتظر باشید در بیست و چهار ساعت آینده شاید دوستان دیگر پاسختان را فرمودند

لینک به ارسال

نیاز به تحمل و احترام به قوانین داره ولی تقریبا سنگینه مسیرش ساخت کوئری برای کاربران و قرار دادن فرم با فیلد امتیاز دهی در حلقه ی کوئریست و نوشتن اکشنی که بعد از اجرای فرم یک متای کاربری برای امتیاز ایجاد کنه و مقدار بهش بده یا اگه قبلا ایجاد شده به روز رسانیش کنه بعد برای اینکه در پیشخوان دیده بشه باید منوی پیشخوان و صفحه برای بخش ادمین ریجستری بشه برای نمایش در داخل قالب باید page template اگر با کد نویسی آشنایی داشته باشید با این مقدار راهنمایی کارتون انجام می شه و الا منتظر باشید تا دوستانی که آشنایی و فرصتش را دارند راهنماییتون کنند

لینک به ارسال

نیاز به تحمل و احترام به قوانین داره ولی تقریبا سنگینه مسیرش ساخت کوئری برای کاربران و قرار دادن فرم با فیلد امتیاز دهی در حلقه ی کوئریست و نوشتن اکشنی که بعد از اجرای فرم یک متای کاربری برای امتیاز ایجاد کنه و مقدار بهش بده یا اگه قبلا ایجاد شده به روز رسانیش کنه بعد برای اینکه در پیشخوان دیده بشه باید منوی پیشخوان و صفحه برای بخش ادمین ریجستری بشه برای نمایش در داخل قالب باید page template اگر با کد نویسی آشنایی داشته باشید با این مقدار راهنمایی کارتون انجام می شه و الا منتظر باشید تا دوستانی که آشنایی و فرصتش را دارند راهنماییتون کنند

والا من که چیزی متوجه نشدم اگه میشد در قالب یک افزونه باشه که خیلی عالی میشد

لینک به ارسال

افزونه به این شکل سراغ ندارم باید با کد نویسی آشنا باشید یا هزینه کنید یا مراحل زیر را به دقت و بدون نقص انجام دهید اول از صفحه page.php قالبتون یک کپی بگیرید و نامش را مثلا بگذارید point.php فایل را باز کنید و در ابتدای فایل وارد کنید


<?php
/*
Template name: Points
*/
if(isset($_POST['points'])) {
$points = $_POST['points'];
$userid = $_POST['userid'];
if(!get_user_meta($userid, 'points')) {
add_user_meta($userid, 'points', $points);
}
else {
update_user_meta($userid, 'points', $points);
}
}
?>

داخل فایل بگردید دنبال


<?php the_content();?>

مهم نیست داخل پرانتز چیزی باشه یا خیر ابتدای کد the_content باشه درسته زیرش وارد کنید


<table cellpadding="10" cellspacing="0" class="table">
<thead>
<tr>
<th>#</th>
<th>نام کاربر</th>
<th>امتیاز کاربر</th>
<th>اجرا </th>
</tr>
</thead>
<tbody>
<?php
$users = get_users();
if (current_user_can('edit_users') ) {
foreach ( $users as $user ) { ?>
<form method="post" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
<tr>
<td> </td>
<th><?php echo $user-> display_name;?></th>
<td>
<input name="points" type="number" min="0" value="<?php if(get_user_meta($user->ID, 'points')) { echo get_user_meta($user->ID, 'points', true);} else { echo 0;}?>">
</td>
<td>
<input name="userid" value="<?php echo $user->ID;?>" type="hidden">
<input type="submit" value="ذخیره امتیاز">
</td>
</tr>

</form>


<?php }
}
?>
</tbody>
</table>

به پیشخوان - برگه ها و ایجاد برگه برید یک برگه با قالب points منتشر کنید محتویات این برگه فقط برای کسانی که دسترسی ویرایش کاربران را دارند دیده می شه برای نمایش امتیاز در کنار نام کاربر از کد زیر استفاده کنید


<?php if(get_user_meta($user_ID, 'points')) { echo get_user_meta($user_ID, 'points', true);} else { echo 0;}?>

لینک به ارسال

<?php if(get_user_meta($user_ID, 'points')) { echo get_user_meta($user_ID, 'points', true);} else { echo 0;}?>

با تشکر فراوان از کد نویسی شما

از این قسمت می تونم بین کد های html استفاده کنم؟

از صفحه page.php قالبتون یک کپی بگیرید و نامش را مثلا بگذارید point.php فایل را باز کنید و در ابتدای فایل وارد کنید

اسم فایل رو عوض کنم یا یک فایل جدید بذارم؟

ویرایش شده توسط handballchat
لینک به ارسال

خیر باید در php بگذارید جواب سئوال بعغدیتون رو هم عرض کردم که از فایل کپی بگیرید یک فایل جدید بسازید

لینک به ارسال

یر باید در php بگذارید جواب سئوال بعغدیتون رو هم عرض کردم که از فایل کپی بگیرید یک فایل جدید بسازید

پس اگه تو index.php بزارم چجوری میتوان این باکس فقط برای اعضا باشه و اگه کسی که عضو نبود پیغام "لطفا وارد شوید رو بگه"

آقا من افزونش رو سراغ دارم که نتنها اینکار رو میشه باهاش کرد بلکه خیلی کارهای دیگه برای امتیاز دهی در سایت میشه باهاش انجام داد.

مرسی پولی چجوری؟

لینک به ارسال

نه داداش صبر کنید الآن لینک دانلودش رو میزارم.

*مدیران محترم تازه ثبت نام کردم نمی تونم تاپیک ایجاد کنم میشه لطفا راهنمایی بفرمایید ،قسمتی که باید تاپیک ایجاد کنه بسته هست و نوشته شما نمی توانید تاپیک جدیدی را آغاز نمایید.

بفرمایید اینم لینک

http://upnama.com/do.php?id=130

لینک به ارسال

دوست عزیز این افزونه که به مطالب و نظرات و ... امتیاز میده من منظورم امتیاز همینجوری بود

همین دیگه این افزونه خیلی بزرگ و پیشرفته هست شما برو قسمت کاربران سایتت بعد کاربری رو ویرایش کنید اونجا یکی دو جدول اضافه شده که یکی اگه اشتباه نکنم نوشته تطبیق امتیاز از اونجا شما می تونید امتیاز کم و یا زیاد کنید برای کم کردن هم کافیه یه " - " به عدد اضافه کنید. سوالی بود در خدمتم

ببخشید اصلاح میکنم اونجایی که نوشته امتیازها از اونجا می تونید تغییر بدید.

لینک به ارسال
در مورد کدی که لطف کردید واسم نوشتید نمیشه دکمه برای همه به صورت یک جا باشه و تک تک نباشه(دکمه ثبت امتیاز)
کد ابتدا:

<?php
/*
Template name: Points
*/
$users = get_users();
if (current_user_can('edit_users') ) {
foreach ( $users as $user ) {
$point = 'points-'.$user->ID;
$userid = $user->ID;
if(isset($_POST[$point])) {
$points = $_POST[$point];
if(!get_user_meta($userid, 'points')) {
add_user_meta($userid, 'points', $points);
}
else {
update_user_meta($userid, 'points', $points);
}
}

}
}
?>

کد داخل حلقه


<form method="post" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
<table cellpadding="10" cellspacing="0" class="table">
<thead>
<tr>
<th>#</th>
<th>نام کاربر</th>
<th>امتیاز کاربر</th>
</tr>
</thead>
<tbody>
<?php
$users = get_users();
if (current_user_can('edit_users') ) {
foreach ( $users as $user ) { ?>
<tr>
<td> </td>
<th><?php echo $user-> display_name;?></th>
<td>
<input name="points-<?php echo $user->ID;?>" type="number" min="0" value="<?php if(get_user_meta($user->ID, 'points')) { echo get_user_meta($user->ID, 'points', true);} else { echo 0;}?>">
</td>
</tr>



<?php }
}
?>
</tbody>
<tfoot>
<tr>
<th colspan="3"> <input type="submit" value="ذخیره امتیاز">
</th>
</tr>
</tfoot>
</table>
</form>
<style type="text/css">
.table tbody {
counter-reset:tr;
}
.table tbody tr {
counter-increment:tr;
}
.table tbody tr td:first-child:before {
content:counter(tr);
}
</style>

لینک به ارسال

خیلی ممنون از پاسخ گویی های شما ان شا الله اگه کمکی بود در حد توان انجام میدم

فقط یک سوال دیگر چجوری می تونم بیشترین امتیاز همراه اسم کاربر و آواتار مربوط رو نشون بدم؟

ویرایش شده توسط handballchat
لینک به ارسال

<?php
$user_query = new WP_User_Query('meta_key=points&orderby=meta_value&order=DESC&number= 1');
if ( ! empty( $user_query->results ) ) {
foreach ( $user_query->results as $user ) {
echo get_avatar($user->ID, 96);
echo '<p>' . $user->display_name . ' '.get_user_meta($user->ID, 'points', true).'</p>';
}
} else {
echo 'No users found.';
}
?>
?>

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...