افزودن نقش کاربری در وردپرس بدون استفاده از افزونه

ایجاد نقش کاربری جدید در وردپرس بدون افزونه

آخرین بروزرسانی در تاریخ : 5 آبان 1402
باید لاگین کنید!

ایجاد نقش کاربری جدید در وردپرس و مدیریت سطح دسترسی کاربران در وردپرس یکی از ابتدایی‌ترین کارهایی است که هر وردپرس کار حرفه‌ای باید بلد باشد! پس اگر می‌خواهید که یک وردپرس کار حرفه‌ای باشید مقاله افزودن نقش کاربری در وردپرس بدون استفاده از افزونه را از سری آموزش‌ وردپرس از آکادمی وبکیما از دست ندید 😉

نقش کاربران در وردپرس چیست؟

حالا شاید بعضی از دوستانی که زیاد با سطح دسترسی آشنایی ندارند بپرسند که نقش کاربری در وردپرس ، یا سطوح دسترسی کاربران در وردپرس اصلا چی هست و به چه دردی می خورد؟

نقش کاربری در وردپرس به منظور دادن دسترسی‌های مختلفی از سایت به کاربران است برای مثال شما می‌خواهید یک کارمند برای سایت‌تان استخدام کنید تا برای‌تان مقالاتی نوشته و منتشر کند ولی نمی‌خواهید که به غیر از بخش نوشته‌های سایت به قسمت‌های دیگر دسترسی داشته باشد که البته برای امنیت سایت باید هم همین‌طور باشد.

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

نقش های کاربری در وردپرس

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

  1. مدیر
  2. ویرایشگر
  3. نویسنده
  4. مشارکت کننده
  5. مشترک

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

سطح دسترسی مدیر در وردپرس

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

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

به طور خلاصه مدیر در سایت های وردپرسی کامل ترین سطح دسترسی و کامل ترین نقش کاربری را با تمام دسترسی ها در اختیار دارد.  

نقش کاربری ویرایشگر

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

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

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

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

نویسنده مانند ویرایشگر نمی تواند دیدگاه ها را حذف یا ویرایش کند و فقط می تواند نظرات را مشاهده کند، همچنین نویسنده به غیر از قسمت هایی که مربوط به نوشتن و انتشار یک پست است به قسمت های دیگر سایت دسترسی ندارد، و از نظر امنیت نمی تواند تهدیدی برای سایت باشد، البته باید توانایی حذف پست های منتشر شده را هم در نظر داشته باشیم که این خود کاری خطرناک برای سئو وردپرس است!  

نقش کاربری مشارکت کننده

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

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

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

نقش کاربری مشترک در وردپرس

پر استفاده ترین نقش کاربری در وردپرس، نقش مشترک است. تمام کاربرانی که در سایت عضو می شوند به غیر از نقش هایی که در بالا به آن اشاره شد، نقش مشترک دارند، مشترک ها به غیر از تنظیمات پروفایل خود به هیچکدام از قسمت های سایت دسترسی ندارند.

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

افزودن نقش کاربری در وردپرس

در ابتدای مقاله به‌صورت کامل توضیح دادیم که نقش های کاربری وردپرس چیست و اینکه نقش های کاربری پیشفرض در وردپرس چه نقش هایی هستند. پیشنهاد می کنم اگه با نقش کاربری در وردپرس آشنایی ندارید حتما ابتدای مقاله را با دقت مطالعه بفرمایید.  

نقش های کاربری پیشفرض وردپرس و دلایل نیاز به افزودن نقش کاربری جدید در وردپرس

در وردپرس ۵ نقش کاربری بصورت پیشفرض وجود دارد که عبارتند از: مدیر، ویرایشگر، نویسنده، مشارکت کننده، مشترک.

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

مثال برای افزودن نقش کاربری جدید در وردپرس

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

افزودن نقش کاربری در وردپرس بدون استفاده از افزونه
اضافه کردن نقش کاربری در وردپرس بدون استفاده از افزونه

اضافه کردن نقش کاربری در وردپرس بدون استفاده از افزونه

برای افزودن نقش کاربری در وردپرس بدون افزونه شما باید دست به کد بشید و یه چند خط کد رو داخل فایل functions.php قرار بدید.

برای این کار ابتدا به پیشخوان وردپرس رفته سپس از منوی نمایش > ویرایشگر پوسته را انتخاب کنید تا وارد صفحه ویرایشگر قالب بشید. سپس از بین فایل های قالب فایل فانکشن functions.php را در حالت ویرایش قرار بدید و کد های زیر را در انتهای این فایل قبل از بسته شدن تگ PHP قرار دهید.

نکته: کد ها رو باید بین دو تگ  <?php و ?> قرار بدید.  

کد اضافه کردن نقش کاربری در وردپرس

// Add wordpress user roles by webkima.com
$result = add_role( 'designer', __(
'designer' ),
array(
'read' => true, // true allows this capability
'edit_posts' => false, // Allows user to edit their own posts
'edit_pages' => false, // Allows user to edit pages
'edit_others_posts' => false, // Allows user to edit others posts
'create_posts' => false, // Allows user to create new posts
'manage_categories' => false, // Allows user to manage post categories
'publish_posts' => false, // Allows the user to publish
'edit_themes' => false, // false denies this capability
'install_plugins' => false, // User cant add new plugins
'update_plugin' => false, // User can’t update any plugins
'update_core' => false // user cant perform core updates
)
);

توضیحات کد افزودن نقش کاربری در وردپرس

قطعه کد بالا در وردپرس یک نقش کاربری جدید با نام designer می سازد که در این کد می تونید تغییرات خودتون رو اعمال کنید و دسترسی های نقش کاربری را شخصی سازی کنید که در ادامه کامل توضیح می دم:  

نام نقش کاربری

در خط دوم کد می تونید نام نقش کاربری را انتخاب کنید designer که ما در اینجا نام را انتخاب کرده ایم. در خط سوم هر نامی که در خط دوم قرار دادید را دوباره وارد کنید برای مثال چون ما نام designer را در خط دوم انتخاب کردیم دوباره designer رو در خط سوم وارد می کنیم.  

تعیین سطح دسترسی برای افزودن نقش کاربری در وردپرس

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

کدهای سطوح دسترسی برای هر نقش کاربری در وردپرس:

  • read با true بودن این کد قابلیت خواندن به نقش کاربری افزوده می شود.
  • edit_posts با true بودن این کد به نقش کاربری اجازه ویرایش پست های خودش را می دهید. 
  • edit_pages اجازه ویرایش برگه ها را با true بودن این کد می دهید. 
  • edit_others_posts با true بودن این بخش اجازه ویرایش پست های دیگران را به نقش کاربری می دهید. 
  • create_posts اجازه ساخت پست های جدید با روشن بودن این کد. 
  • manage_categories با true بودن این بخش قابلیت مدیریت دسته بندی ها را به نقش کاربری می دهید. 
  • publish_posts اجازه برای منتشر کردن پست برای نقش کاربری 
  • edit_themes قابلیت ادیت قالب وردپرس بوسیله این کد به نقش کاربری داده می شود. 
  • install_plugins اجازه برای نصب افزونه ها به نقش کاربری مورد نظر 
  • update_plugin با true بودن این کد قابلیت آپدیت افزونه ها را به نقش کاربری می دهید. 
  • update_core اجازه برای آپدیت هسته وردپرس را صادر می کند.  

توجه کنید که (خیلی مهم):
هر کدام از قابلیت های بالا را که می خواهید به نقش کاربری در سایت وردپرس خود اضافه کنید باید کلمه true را در جلوی کد مربوطه قرار دهید و اگر می خواهید که دسترسی مورد نظر را از نقش کاربری مد نظرتان بگیرید باید جلوی کد مورد نظر کلمه false را قرار دهید.  

کد کامل افزودن نقش کاربری در وردپرس

<?php
$result = add_role( 'clients', __('Clients' ),
 
array(
'read' => true, // true allows this capability
'edit_posts' => true, // Allows user to edit their own posts
'edit_pages' => true, // Allows user to edit pages
'edit_others_posts' => true, // Allows user to edit others posts
'create_posts' => true, // Allows user to create new posts
'manage_categories' => true, // Allows user to manage post categories
'publish_posts' => true, // Allows the user to publish
'mode'edit_themes' => false, // false denies this capability
'edit_files' => true,
'edit_theme_options'=>true,
'manage_options'=>true,
'moderate_comments'=>true,
'manage_categories'=>true,
'manage_links'=>true,
'edit_others_posts'=>true,
'edit_pages'=>true,
'edit_others_pages'=>true,
'edit_published_pages'=>true,
'publish_pages'=>true,
'delete_pages'=>true,
'delete_others_pages'=>true,
'delete_published_pages'=>true,
'delete_others_posts'=>true,
'delete_private_posts'=>true,
'edit_private_posts'=>true,
'read_private_posts'=>true,
'delete_private_pages'=>true,
'edit_private_pages'=>true,
'read_private_pages'=>true,
'unfiltered_html'=>true,
'edit_published_posts'=>true,
'upload_files'=>true,
'publish_posts'=>true,
'delete_published_posts'=>true,
'delete_posts'=>true,
'install_plugins' => false, // User cant add new plugins
'update_plugin' => false, // User can’t update any plugins
'update_core' => false // user cant perform core updates
 
)
);
?>

بهترین افزونه تعیین سطح دسترسی کاربران در وردپرس

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

با یک ویرایشگر نقش کاربر وردپرس، شما توانایی ایجاد نقش های کاربری خود را به دست می آورید یا نقش های کاربری موجود را ویرایش می کنید تا دقیقاً کنترل کنید که کاربر به چه قابلیت هایی دسترسی دارد ( AKA دقیقاً چه اقداماتی را کاربر می تواند انجام دهد ).

در ادامه این پست هر آنچه را که باید در مورد این افزونه ها بدانید را به شما نشان خواهیم داد. ما با نگاهی گذرا به چندتا از بهترین افزونه تعیین سطح دسترسی کاربران در وردپرس، که همگی رایگان هستند، شروع می کنیم.


افزونه Profile Builder

بهترین افزونه تعیین سطح دسترسی کاربران در وردپرس

افزونه پروفایل ساز یا همان Profile Builder یک راه حل کامل برای کار با تمام جنبه های کاربران وردپرس و ثبت نام است.

از نظر نقش های کاربر، نسخه رایگان Profile Builder با یک مدیر نقش داخلی ارائه می شود. تو می توانی:

  • نقش های کاربر موجود را ویرایش کنید.
  • نقش های کاربری جدید ایجاد کنید، از جمله شبیه سازی نقش های موجود یا ایجاد نقش های جدید از ابتدا.
  • قابلیت‌هایی را از نقش‌ها اضافه یا حذف کنید، از جمله پشتیبانی از همه قابلیت‌های داخلی و همچنین قابلیت‌هایی که افزونه‌ها اضافه می‌کنند. شما همچنین می توانید قابلیت های خود را اضافه کنید.

هنگامی که نقش های کاربری خود را تنظیم کردید، Profile Builder همچنین توانایی اختصاص چندین نقش کاربر را به یک کاربر اضافه می کند. علاوه بر کار با نقش‌ها و قابلیت‌های کاربر، Profile Builder همچنین می‌تواند فراتر رفته و به شما در ایجاد فرم‌های ثبت نام سفارشی ، ورود به سیستم و ویرایش نمایه کمک کند.

به عنوان مثال، می توانید یک فرم ثبت نام سفارشی ایجاد کنید که به طور خودکار به کاربران یک نقش کاربری خاص اختصاص دهد. این به شما امکان می‌دهد نه تنها نقش‌های کاربر را ایجاد و ویرایش کنید، بلکه در هنگام ثبت نام کاربر به روش‌های معناداری با آنها کار کنید.

در نهایت، Profile Builder شامل محدودیت محتوا نیز می شود تا بتوانید دسترسی به محتوای سایت خود را بر اساس نقش کاربر محدود کنید. اگر به نسخه پرمیوم ارتقا دهید، ویژگی‌های پیشرفته‌تری برای ورود، ثبت‌نام و ویرایش نمایه به همراه ویژگی‌های مفیدی مانند تأیید دستی سرپرست در هنگام ثبت نام برای برخی نقش‌های کاربری دریافت خواهید کرد.


جمع بندی

در انتها امیدوارم که آموزش افزودن نقش کاربری در وردپرس واستون مفید بوده باشه و با استفاده از اون بتونید نقش های کاربری جدیدی به سایتتان اضافه کنید. اگر در رابطه با افزودن نقش کاربری در وردپرس سوال یا مشکلی داشتید در قسمت دیدگاه های سایت و در انتهای همین صفحه با ما در ارتباط باشید. ممنون از همراهیتون 😉

4.9/5 - (7 امتیاز)

دیدگاه و پرسش

  1. ghkhaliji میگوید:

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

    • پشتیبانی میگوید:

      درود بر شما، در این رابطه باید سفارش ها را به صورت دستی در ووکامرس وارد کنید، کار بسیار ساده ای است با یه تحقیق کوچیک می‌تونید کار رو انجام بدید.

  2. محمد میگوید:

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

    • پشتیبانی میگوید:

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

  3. یونس میگوید:

    درود
    من متوجه این موضوع نشدم که
    اگه بخواییم به کاربر اجازه بدیم که فقط بتونه محصول اضافه کنه (ووکامرس) چی کار باید بکنیم؟

    • پشتیبانی میگوید:

      درود، افزودن محصول دقیقا مانند افزودن مقاله در سایت است.

  4. حامد صداقت میگوید:

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

    • پشتیبانی میگوید:

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

  5. محمد میگوید:

    سلام
    من این کد رو استفاده کردم ولی کاربر جدید با این نقش نمیتونه محصولات ووکامرس رو ببینه!
    همه رو هم true دادم.
    لطفا راهنمایی کنید.
    متشکر

    • پشتیبانی میگوید:

      سلام آقا محمد، برای کار کردن با این کدها باید به زبان PHP مسلط باشید، اگر برای شما به درستی کار نمی کند می توانید از افزونه هایی که برای افزودن نقش کاربری در وردپرس وجود دارند استفاده کنید، برای مثال افزونه Advance access manager می تواند به سادگی موارد مورد نیاز شما را انجام دهد.

آموزش‌های ویدیویی جدید یوتیوب رو از دست ندی!

بزن بریــم!