NWWG

نشان ندادن ابزارک برای مشترک‌ها (دستور شرطی)

12 پست در این موضوع قرار دارد

سلام

آموزش ساخت ابزارک در پیشخوان وردپرس

مطلب مفیدی با امکان شخصی سازی بالاست

بنده از آقای خلجی در مورد این ابزارک سوالی داشتم که فرمودند در انجمن مطرح بشه تا دوستان پاسخ بدهند. بنده سوال رو عینا اینجا کپی می کنم:

«چه کدی می‌بایست در این ابزارک قرار بدهم تا کاربرانی که سطح اونها “مشترک” تعریف شده این ابزارک رو نبینند و برعکس( یعنی تنها مشترک‌ها ببینند )»

0

به اشتراک گذاری این پست


لینک به پست

این رو تست کنید


if(current_user_can('read' )){
//کد شما
}

http://codex.wordpress.org/Function_Reference/current_user_can

1

به اشتراک گذاری این پست


لینک به پست

خوب! متاسفانه کد کار نکرد

از مستندات وردپرس هم چیز کاربردیی دستگیرمان نشد :)

0

به اشتراک گذاری این پست


لینک به پست

کد رو به چه صورتی استفاده کردید ؟

1

به اشتراک گذاری این پست


لینک به پست

کد رو به چه صورتی استفاده کردید ؟

همونطور که مرتضی عزیز فرموده بودند

به ابتدای کد که در فانکشن موجود بود اضافه شد

0

به اشتراک گذاری این پست


لینک به پست

یک سوال احتمالا خیلی سطح پایین:

توی کد ها فقط امکان اجازه یا عدم اجازه عمل خاص رو میشه تعیین کرد (مثلا: یوزر_فعلی_بتواند: بخواند یا بنویسید یا پست را ویرایش کند و ....)

حالا این یوزر چه کسی است؟ یوزر فعلی میتواند مدیر باشد یا مشترک. این سطح یوزر رو کجا باید تعریف کنیم؟

چون میخواهم چند ابزارک در پیشخوان تعریف کنیم که آنها را فقط مشترک ها ببینند نه اعضای فنی و نویسنده ها

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

0

به اشتراک گذاری این پست


لینک به پست

خوب این مورد دومی که گفتید کلا مسئله فرق کرد

شما باید role کاربر جاری رو بگیرید و بعد در شرطی بزارید که اگر فقط این کاربر این دسترسی رو داشت بتونه ببینه

2

به اشتراک گذاری این پست


لینک به پست

خوب پس بنده بابت کلام نارسام عذرخواهی میکنم که هم وقت شما و هم خودمو در این باره گرفتم

شبه ای که پیش اومد اینکه منظور شما از کاربر جاری چیه؟ هر یوزر خاص رو باید جداگانه تعریف کنیم یا کافیه برای هر "سطح" یکبار تعریف کنیم؟

------------------------

برای شفاف شدن اگر ممکنه مثال بزنید و کدی رو با این خصوصیات ذکر کنید

باز هم ممنون

0

به اشتراک گذاری این پست


لینک به پست

این رو تست کنید:

$user = wp_get_current_user();

if ( in_array( 'administrator', $user->roles ) ) {
// .. نمایش کد برای نقش مدیر
}

2

به اشتراک گذاری این پست


لینک به پست

بله کار کرد

و از این بابت بسیار ممنونیم!

دوتا ریزه کاری:

1. الان کد ایجابی است یعنی اگر ادمین بود بتواند ببیند، من کدی میخواهم که سلبی باشد یعنی همه بتوانند بغیر از مشترک ها

2. آیا میشود کد را اینطور نوشت؟:


$user = wp_get_current_user();
if ( in_array( 'administrator,writer', $user->roles ) ) {
// .. نمایش کد برای نقش مدیر
}

و اینکه چون وردپرس فارسی شده من نمیدونم انگلیسی هر سطح دقیقا چی میشه مثلا مدیر : Administrator نویسنده: writer مشارکت کننده: ؟؟؟ مشترک: ؟؟؟

امیدوارم اینبار تونسته باشم مفهوم رو برسونم.از پشتیبانی صمیمانتون ممنونیم

0

به اشتراک گذاری این پست


لینک به پست

تست کنید:

if ( in_array( 'administrator', $user->roles )  || in_array( 'subscriber', $user->roles ) ) {
// .. نمایش کد برای نقش مدیر
}

2. آیا میشود کد را اینطور نوشت؟:

"subscriber" >مشترک

"administrator" >مدیر

"editor" >ویرایشگر

"author" >نویسنده

"contributor" >مشارکت‌کننده

1

به اشتراک گذاری این پست


لینک به پست

با تشکر از همگی این مطلب ادامه پست پیغام‌های مدیریت است

افزونه‌ای در مخزن وردپرس برای انجام این کار یافت شد:

http://wordpress.org/plugins/admin-dashboard-site-notes

1

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط Pluto65
      سلام
      وردپرس 4.8.1 دارم و افزونه پارسی دیت را نصب کرده ام.این افزونه، ابزارکی به نام "بایگانی تاریخ خورشیدی" دارد که تاریخ را به شمسی تبدیل می کند اما فونت نمایش اعداد در آن با فونت اصلی سایت منطبق و هماهنگ نیست.
      برای سایت از فونت "یکان" استفاده کرده ام و در تمام سایت این فونت اعمال شده اما در این ابزارک اعمال نمی شود.
      لازم به ذکر است با افزونه جلالی هم تست کردم و همین مشکل در آن جا هم وجود داشت.
       
      برای حل مشکل، راهنمایی بفرمایید .

    • توسط sepehrsiasat
      سلام
      سایتی که دارم چن بخش داره که برای اینکه قالب های متفاوت و اینا نیاز داره مجبور شدم با ساخت ساب دامین این بخش ها رو جدا کنم ( بخش آموزش/دانلود/آزمون/...)
      حالا میخوام همه اینا بهم وصل باشه و کسی که یک بار لوگین میکنه توی یدونه از اینا دیگه نخواد توی بقیه هم لوگین کنه:
      دو تا راه بهم گفتن:
      1- برای هر ساب دامین یه وردپرس جدا بزنم و بعد همه رو به یه دیتابیس وصل کنم و اسم جداول رو باید یه کم عوض کنم که خیلی بلد نیستم
      2- استفاده از وردپرس شبکه ( که فقز در حالت ساب دامین به من اجازه میداد)
      حالا من وردپرس شبکه روی سایت اصلی ام (doctorabad.com) ایجاد کردم و از قبل توی cpanel ساب دامین ها رو هم تعریف کردم پیشخوان سایت اصلی هم مشکلی نداره ولی وقتی میخوام وارد بخش پیشخوان ساب دامین هام مینویسه:
      Not Found
      The requested URL /wp-admin/ was not found on this server.
      Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
       
      خب راست هم میگه وقتی میرم توی cpanel و پوشه مربوط به هر ساب دامین رو می بینم فقط یه فولدر cgi-bin توش هست که توی این فولدر هم خالیه و فولدر wp-admin اصلا نداره 
      یه جاهایی خوندم که انگار به ازای هر ساب دامین توی وردپرس شبکه باید خودش یه فایل .htaccess هم بسازه ولی خب برای من نساخته
       
      یه فیلم هم در زیر ضمیمه کردم ببینید
      واقعا ممنون میشم کمکم کنید
      2017-07-25_23-08-17.mp4
    • توسط nariman.rf
      سلام، 
      در بخش نوار ابزار پیشخوان (همون جایی که بعد از لاگین کردن به محیط مدیریت، وقتی میریم توی سایتمون، یه نوار مشکی بالا میاد) با کدهایی که وجود داره، میشه لوگوی مربوط به وردپرس رو (سمت راست) حذف کرد و من از این امکان برای محیط کاربری اعضای سایتم استفاده می کنم.
      اما سمت چپ این نوار مشکی، آیکون جستجو هست. چطور میشه اونو حذف کرد؟ 
      در همون سمت راست، آدرس سایت رو نوشته که وقتی روی اون میریم، منوش باز میشه و نوشته پیشخوان. 
      چطور میشه این بخش رو هم حذف کرد؟ 
      ممنون
    • توسط majidbarz
      سلام دوستان چند بار  وردپرس و نصب کردم موقعی که لاگین میکنم به پیشخوان
      پیشخوان مثل عکس میشه چیکار کنم؟
      به هاستینگم گفت گفت مشکل از ما نیست
      رو زبان انگلیسی اوکی ولی فارسی نه چند افزونه فارسی سازم نصب کردم نشد

    • توسط Rustin
      سلام دوستان
      این کد مربوط به سایدبار سایت من هست، که از فایل style.php ورداشتم.
      ============================================================================================================================== /* Sidebar | Width Sidebar | Width /* ============================================================================================================================ */ <?php $sidebarW = mfn_opts_get( 'sidebar-width', '23' ); $contentW = 100 - $sidebarW; $sidebar2W = $sidebarW - 5; $content2W = 100 - ( $sidebar2W * 2 ); $sidebar2M = $content2W + $sidebar2W; $content2M = $sidebar2W; ?> .with_aside .sidebar.columns { width: <?php echo $sidebarW; ?>%; } .with_aside .sections_group { width: <?php echo $contentW; ?>%; } .aside_both .sidebar.columns { width: <?php echo $sidebar2W; ?>%; } .aside_both .sidebar.sidebar-1{ margin-left: -<?php echo $sidebar2M; ?>%; } .aside_both .sections_group { width: <?php echo $content2W; ?>%; margin-left: <?php echo $content2M; ?>%; } /* من این کد رو به طور کامل نمیتونم بفهمم، تنها چیزی که میتونم توش عوض کنم عرض سایدبار هست (همون عدد 23). مشکل من اینه که من نمیخام برای اینکه ابزارک هام بدرستی نمایش داده بشن مجبور بشم اینقدر سایدبارم رو عریض کنم. اگر به سایت مراجعه کنید میبینید که سایدبار خیلی عریض هست و این صرفا به این دلیله که میخاستم ابزارک ها بدرستی نمایش داده بشن... ولی ابزارک ها تمام فضای سایدبار رو نگرفتن بلکه قسمت چپ سایدبار کامل خالیه...
      چطور میتونم بدون تغییر دادن عرض خود سایدبار، کاری کنم که فقط عرض ابزارک های تو سایدبار افزایش پیدا کنه و بدرستی نمایش داده بشن؟ توی کد بالا که همچنین چیزی رو نمیتونم ببینم. (اگر دوستان کسی میتونه کد بالا رو برام توضیح بده تشکر میکنم.)
      پیشاپیش از پاسخگوییتون تشکر میکنم.
      اینم آدرس سایتم: http://www.ouroboros.ir