تغییر نقش کاربر از طریق PhpMyAdmin در وردپرس
تغییر مستقیم نقش (Role) کاربر از طریق دیتابیس
ممکن است برایتان سوال شود که نقش کاربر در کجای دیتابیس ذخیره میشود! و یا اینکه، چگونه میتوان به صورت مستقیم و از داخل PhpMyAdmin، نقش کاربر را ویرایش نمود! جهت انجام این کار، در ادامه با فول کده همراه باشید.
مراحل انجام کار
به طور خلاصه، نقش و تواناییهای یک کاربر، در جدول wp_usermeta و داخل کلید یا meta_key ای با نام wp_capabilities قرار میگیرد. و همچنین، مقدار wp_capabilities به صورت serialized PHP array ذخیره شده است. اما برای دسترسی به آن:
1-پس از ورود به PhpMyAdmin، وارد تب SQL شوید.
2- دستور زیر را بنویسید:
SELECT * FROM `wp_usermeta` WHERE user_id=1 AND meta_key='wp_capabilities'
همانطور که مشاهده میکنید، در مقابل user_id بایستی آیدی عددی کاربری که میخواهید به wp_capabilities آن دسترسی داشته باشید را قرار دهید. کاربر 1، همان کسی است که در ابتدا وارد سایت شده و آن را راهاندازی کرده است و در واقع، همان ادمین ابتدایی سایت میباشد. (البته اگر تغییر نداده باشید)
3- حالا برروی دکمه GO کلیک کنید. طبیعتا بایستی در صورت وجود داشتن چنین کاربری، فقط با یک نتیجه روبرو شوید.
4- برروی مقدار موجود در ستون meta_value دابل کلیک کرده و متن داخل آن را کپی کنید. احتمالا به صورت زیر باشد:
a:1:{s:13:"administrator";b:1;}
مقدار مقابل s:13:، همان نقش کاربر قرار گرفته است و البته همواره قرار نیست برابر administrator باشد؛ این مقدار میتواند author یا editor یا subscriber یا contributor و یا … نیز باشد. اما اگر قرار شود این مقدار را به یک نقش دیگری تغییر دهید، بایستی s:13: را نیز تغییر دهید! لذا تمامی مقادیر نوشته شده در این خط مهم میباشند. مثلا اگر بخواهیم در بالا، administrator را تغییر دهیم، بایستی برای هرکدام از نقشهای ذکر شده، به صورت زیر عمل کنیم:
Subscriber: a:1:{s:10:"subscriber";b:1;} Contributor: a:1:{s:11:"contributor";b:1;} Author: a:1:{s:6:"author";b:1;} Editor: a:1:{s:6:"editor";b:1;} Administrator: a:1:{s:13:"administrator";b:1;}
در واقع، هر قابلیتی که به یک کاربر داده شود، در انتها به یک سمیکالن ختم خواهد شد که پس از آن مقدار b:1; و یا b:0; نیز قرار خواهد گرفت. که 1 به معنای این است که کاربر این قابلیت را دارد و 0 به معنای این است که ندارد! چراکه ممکن است شما برای مثال، یک قابلیت خاصی را از یک نویسندهای ولی بقیه نویسندگان به آن قابلیت دسترسی داشته باشند بگیرید.
سلام
سپاس از آموزش شما
درود وقت بخیر ممنون از مطلب مفیدتون یکمی خلاصه بود اگر با عکس هر بخش رو عنوان میکردین خیلی بهتر بود . ولی دمتون گرم هرچی سرچ کردم فقط همین مطلب راجبش پیدا کردم کار من راه افتاد
تشکر از لطف شما. موفق باشید 🙂
عالی بود دمتون گرم
عالی بود