رفتن به مطلب

نمایش نقش کاربری نویسنده در مطالب


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

سلام دوستان

... B)

من میخوام نقش کاربری نویسندگان مطالب رو کنارشون نمایش بدم. مثلا بنویسه:

نویسنده: ایمان (مدیر)

باید از چه کدی استفاده کنم؟!

:mellow:

لینک به ارسال

<?php
$user_roles = $current_user->roles;
$user_role = array_shift($user_roles);
if ($user_role == 'administrator') {
echo 'مدیر';
} elseif ($user_role == 'editor') {
echo 'ویراستار';
} elseif ($user_role == 'author') {
echo 'نویسندگان';
} elseif ($user_role == 'contributor') {
echo 'مشارکت کننده';
} elseif ($user_role == 'subscriber') {
echo 'مشترکین';
} else {
echo '<strong>' . $user_role . '</strong>';
}
?>

لینک به ارسال
  • 1 ماه بعد...

تست:

<?php
$user_roles = $current_user->roles;
$user_role = array_shift($user_roles);
if ($user_role == 'administrator') {
echo 'مدیر';
} elseif ($user_role == 'editor') {
echo 'ویراستار';
} elseif ($user_role == 'author') {
echo 'نویسندگان';
} elseif ($user_role == 'contributor') {
echo 'مشارکت کننده';
} elseif ($user_role == 'subscriber') {
echo 'مشترکین';
} else {
echo '<strong>' میهمان '</strong>';
}
?>

لینک به ارسال

تست:

<?php
$user_roles = $current_user->roles;
$user_role = array_shift($user_roles);
if ($user_role == 'administrator') {
echo 'مدیر';
} elseif ($user_role == 'editor') {
echo 'ویراستار';
} elseif ($user_role == 'author') {
echo 'نویسندگان';
} elseif ($user_role == 'contributor') {
echo 'مشارکت کننده';
} elseif ($user_role == 'subscriber') {
echo 'مشترکین';
} else {
echo '<strong>' میهمان '</strong>';
}
?>

تست کردم اما وقتی یک نفر به عنوان مهمان که عضو سایت نیست وارد سایت میشه کنار اسم نویسنده به جای نقش کاربریش "میهمان" نمایش داده میشه!

و مشکل اینجاست که وقتی به عنوان یه نقش کاربری دیگه مثلا ویرایشگر وارد سایت میشم این کد همون نقش رو نمایش میده.

لینک به ارسال

این کد رو امتحان کنید:

$user_id = get_the_author_meta( 'ID' ); //assume we are in The Loop

$user_obj = get_userdata( $user_id );

if( !empty( $user_obj->roles ) ){
foreach( $user_obj->roles as $role ){
echo $role;
}
}

لینک به ارسال

این کد رو امتحان کنید:

$user_id = get_the_author_meta( 'ID' ); //assume we are in The Loop

$user_obj = get_userdata( $user_id );

if( !empty( $user_obj->roles ) ){
foreach( $user_obj->roles as $role ){
echo $role;
}
}

ممنون درست شد فقط انگلیسی نمایش میده بی زحمت فارسیش کنین! :D:rolleyes:

لینک به ارسال
$user_id = get_the_author_meta( 'ID' ); //assume we are in The Loop
$user_obj = get_userdata( $user_id );
$user_roles = $user_obj->roles;
$user_role = array_shift($user_roles);
if( !empty( $user_obj->roles ) ){
if ($user_role == 'administrator') {
echo 'مدیر';
} elseif ($user_role == 'editor') {
echo 'ویراستار';
} elseif ($user_role == 'author') {
echo 'نویسندگان';
} elseif ($user_role == 'contributor') {
echo 'مشارکت کننده';
} elseif ($user_role == 'subscriber') {
echo 'مشترکین';
} else {
echo '';
}
}

لینک به ارسال

فارسیش منی شه همون قبلی ها و درست هم نمایش می داد شما نباید با سیستم خودت چک کنی چون تغییرات روی کوکیت ذخیره می شه و زمان می بره تا تغییر کنه

لینک به ارسال

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

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

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

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

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

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

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

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

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