دسترسی به پیشخوان وردپرس تنها برای مدیران

دسترسی به پیشخوان وردپرس تنها برای مدیران
5 (100%) 2 votes

وردپرس را با قابلیت‌های بی‌شماری که دارد بی‌شک می‌توان به عنوان برترین و محبوب‌ترین CMS جهان معرفی کرد چرا که این سیستم مدیریت محتوا تمام نیازهای کاربران خود را به زانو در میاورد. همان‌طور که می‌دانید در وردپرس امکان افزودن کاربر وجود دارد که نقش کاربران در وردپرس به نقش‌هایی همانند: مدیر، ویرایشگر، نویسنده، مشارکت‌کننده و مشترک تقسیم می‌شود، حال اگر شما بازبین‌گر (مدیر) یک سایت وردپرسی هستید و بنا به دلایل گوناگون تمایل ندارید هیچ‌کدام یک از نقش‌های کاربری نام برده به غیر از نقش کاربری مدیر به پیشخوان وردپرس دسترسی داشته باشند در این نوشته از ماندگار وب همراه ما باشید.

Block-admin-for-all-users-but-administrator

برای اینکه بتوانید تمام نقش‌های کاربری وردپرس را به جزء نقش مدیر از نمایش پیشخوان وردپرس محروم سازید ابتدا فایل فانکشن پوسته وردپرس را برای ویرایش باز کرده و دستور زیر را در محل مناسبی از این فایل قرار دهید (خواهشمندیم از فایل فانکشن نسخه پشتیبان تهیه نمایید) :

add_action( 'init', 'blockusers_mw_init' );
function blockusers_mw_init() {
if ( is_admin() && ! current_user_can( 'administrator' ) ) {
wp_redirect( home_url() );
exit;
}
}

همان‌طور که در دستور بالا تماشا می‌کنید پیشخوان وردپرس تنها برای نقش کاربری Administrator نمایش داده می‌شود و سایر نقش‌های کاربری وردپرس بعد از لاگین (ورود) کردن به برگه‌ی نخست سایت وردپرسی شما ارجاع (ریدایرکت) داده می‌شوند.

امیدوارم آموزش چگونگی نمایش پیشخوان وردپرس تنها برای مدیران مورد پسند شما دوستان گرامی قرار گرفته باشد.


کانال تلگرام ماندگار وب

  1. mekaeil

    ممنون امیرجان
    کاربردی و مفید بود

    1. امیر خلجی مهر

      خواهش میکنم میکائیل جان

  2. Farshad

    ممنون از آموزش کاربردیتون .
    اگه ممکنه آموزشی در مورد تفاوت نقش های کاربری در وردپرس ( مثل تفاوت مشارک کننده و مشترک و … ) قرار بدید .

    1. امیر خلجی مهر

      فرشاد جان این موضوع بسیار ساده و مشخص هست که به نظرم نیازی به تهیه ی نوشته در این رابطه نیست

  3. alireza

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

    1. امیر خلجی مهر

      درود
      به خاطر این هست که کد رو در محل نامناسبی جایگذاری کردید

      1. alireza

        سلام چطور میشه درسش کرد ؟

        1. امیر خلجی مهر

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

          1. alireza

            متاسفانه نگرفتم،چون همیشه درست ازآب در میومدن.حالا؟

          2. امیر خلجی مهر

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

  4. ارمین

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

  5. فرشاد

    ممنون
    اگه بخوایم علاوه بر مدیر به نقش دیگه‌ای هم دسترسی بدیم ، مثلا جوری که مدیر و نویسنده ها بتونن وارد شن ، باید چه تغییری در کد بدیم ؟

    1. امیر خلجی مهر

      فرشاد جان انجمن مطرح کنید، بصورت شرطی میشه اضافه و اینکارو انجام داد

  6. reza

    سلام. ببخشید من انجام دادم .بعد رفتم کد پاک کردم حالا دیگه سایتم بالا نمیاد

    آدرس مسیر فاکشن در هاست چیه که برم ادیتش کنم؟؟؟

    1. امیر خلجی مهر

      درود

      احتمالاً اشتباه چیزی رو پاک کردید، تو مسیر زیر، وارد پوسته ای که فعال هست بشید
      wp-content/themes

      در ضمن برای اینکه چنین مشکلاتی پیش نیاد، از افزونه اختصاصی استفاده کنید

  7. احمدرضا گل

    با سلام. با تشکر از شما بابت درج این مطلب مفید.

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

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

    با تشکر

    1. امیر خلجی مهر

      درود احمدرضا جان
      جالب هست، این کد چیز خاصی نداره و تنها رول کاربر رو چک میکنه، شاید هم در افزونه یا پوسته شما از تابع ایز ادمین استفاده شده و تداخلی بوجود اومده.
      سپاس برای بازگو کردن این مورد

  8. احمدرضا گل

    سلام جناب خلجی مهر عزیز.

    منم اول فکر نمیکردم مشکل از این کد باشه چون احتمالش خیلی ضعیف بود. اما بعد که تک تک کد ها رو غیر فعال کردم متوجه شدم این کد باعث اختلال شده به همین جهت حذف کردم و مشکل حل شد. به نظرم قالب اجازه استفاده از کد رو نمیده به دلیلی که شما اعلام فرمودید.
    بازم تشکر بابت راهنماییتون

    1. امیر خلجی مهر

      درود احمدرضا جان
      بله ظاهرا در جایی تداخل وجود دارد، سپاس از آگاهی رساندن شما به سایر دوستان

  9. پویا

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

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

    1. امیر خلجی مهر

      با درود.
      بله شدنی هست، باید کد را ویرایش و نقش‌های دلخواه‌تان را به آن بیافزایید.

  10. سپیده

    سلام.داخل سایت بنده فقط مدیر به پیشخوان بصورت آزادانه دسترسی داره ولی نقش مدیر فروشگاه یا هر نقش دیگه ای بعد از ورود به پیشخوان روی اولین لینکی که کلیک میکنه ارور 500 رو دریافت میکنه و تا حدوداً یک ساعت نمیتونه به سایت یا صفحه پیشخوان دسترسی داشته باشه و کلاً فقط ارور 500 رو دریافت میکنه!
    لطفاً کمک بفرمایید..

    1. امیر خلجی مهر

      درود.
      نخست وردپرس‌تان را بصورت دستی بروزرسانی کنید، شاید درست شود.
      در غیر اینصورت پوسته پیش‌فرض وردپرس را فعال کنید و باز اگر هم‌چنان مشکل پابرجا بود، افزونه‌ها را غیرفعال کنید، شاید یکی از افزونه‌‌های شما چنین مشکلی را پدیدار کرده است.

  11. سپیده

    ممنون از پاسختون.همه این کارها رو کردم ولی متاسفانه مشکل پابرجاست.
    در رابطه با افزونه ها هم یکی یکی شروع به فعال کردن کردم اما بعد از فعال کردن هر افزونه شاید این اتفاق میافتاد شاید نه!یعنی مثلاً گراویتی فرم رو فعال میکردم به مشکل میخورد.غیر فعالش میکردم درست میشد.بعد مثلاً افزونه ووکامرس رو فعال میکردم درست بود، باز گراویتی فرم رو فعال میکردم میدیدم همچنان درسته.اما سر فعال کردن یه افزونه دیگه مجدد همین اتفاق تکرار میشد!
    واقعاً خیلی عجیبه برام!تا حالا ندیدم همچین چیزی رو!!
    این مساله یه مشکل معموله که نقش کاربری غیر از مدیر کل این داستان براش پیش بیاد؟!

    1. امیر خلجی مهر

      با درود.
      چنین چیزی شدنی نیست، حتما با یکی از روش‌هایی که گفته شد، مشکل شما باید درست می‌شد.
      می‌تونید در انجمن بیان کنید تا دوستان بیشتر راهنمایی کنند:
      http://forum.wp-parsi.com/
      و یا در تلگرام با بنده در ارتباط باشید تا در زمان آزاد برای‌تان بررسی کنم:
      tansu68

دیدگاه خود را بنویسید

تنها دیدگاه‌های پارسی برای نمایش پذیرفته خواهند شد!

ماندگار وب - 1398