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

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

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

function snippets_remove_role() {
    remove_role( 'editor' );
    remove_role( 'author' );
    remove_role( 'contributor' );
    remove_role( 'subscriber' );
}
add_action( 'init', 'snippets_remove_role' );

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

add_role( $role, $display_name, $capabilities );

 همانطور که از تابع معلوم است 3 تا پارامتر دریافت می کند . اولی نام نقش است . که باید به انگلیسی وارد کنید و تکراری هم نباشد . دومی نام نقش است ! منتها دومی در سایت نمایش داده می شود . به عنوان مثال نام اولی را chat_op میگذارید و نام دومی را Chat Operator بعد در سایت کلمه Chat Operator به نمایش گذاشته می شود . پارامتر آخری هم دسترسی های کاربر را تعریف می کند . به مثال زیر توجه کنید :

function snippets_add_role() {
    add_role(
		'new-role',
		__( 'New Role' ),
		array(
			'read'         => true, 
			'edit_posts'   => true,
			'upload_files'   => true,
			'publish_posts'   => true,
			'delete_posts' => false,
		)
	);
}
add_action( 'init', 'snippets_add_role' );

 خب قبل از اینکه ادامه بدهید کد را تست کنید . مثلا روی لوکال هاست تست کنید و نتیجه اش را ببینید تا برسیم به بقیه مطلب . ما با تابع add_role یک نقش تعریف کردیم با نام new-role و نامی که در سایت نمایش داده می شود New Role می باشد . دسترسی خواندن ، ویرایش مطلب، آپلود فایل و انتشار مطلب بدون بازبینی به این کاربر داده شده است . همچنین اجازه حذف مطالب را نیز ندارد حتی مطالب ارسالی توسط خودش . جهت مشاهده دسترسی ها و نام مستعار آن ها میتوانید به این لینک مراجعه کنید .

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

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

نشانی ایمیل شما منتشر نخواهد شد.