رفتن به مطلب

سفارشی سازی حرفه ای پنل کاربری وردپرس


پست های پیشنهاد شده

سلام به تمام کاربران 20 بخصوص مسیح عزیز که همیشه کمک و راهنمایی میکنه.

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

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

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

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

  • مدیر انجمن

درود؛

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

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

و باید یک برگه داشبورد داخل قالب طراحی کنید با امکانات مدنظرتون. و همچنین کاربران غیر از مدیر رو بعد از لاگین به این صفحه داشبورد ریدایرکت کنید با این کد:

add_action('wp_head','masih_redirect_admin');
function masih_redirect_admin(){
  if(is_admin()&&!current_user_can('level_10')){
    wp_redirect(WP_HOME.'/dashboard');
    die; // You have to die here
  }
}

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

$user = wp_get_current_user();
if ( in_array( 'author', (array) $user->roles ) ) {
    //The user has the "author" role
}

 

  • Like 2
لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر

در 39 دقیقه قبل، Masih گفته است :

درود؛

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

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

و باید یک برگه داشبورد داخل قالب طراحی کنید با امکانات مدنظرتون. و همچنین کاربران غیر از مدیر رو بعد از لاگین به این صفحه داشبورد ریدایرکت کنید با این کد:

add_action('wp_head','masih_redirect_admin');
function masih_redirect_admin(){
  if(is_admin()&&!current_user_can('level_10')){
    wp_redirect(WP_HOME.'/dashboard');
    die; // You have to die here
  }
}

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

$user = wp_get_current_user();
if ( in_array( 'author', (array) $user->roles ) ) {
    //The user has the "author" role
}

 

 

 

1-برام قابل فهمه توضیحاتت اما توی اجرا مشکل دارم . من بلد نیستم که چطور یک صفحه داشبورد رو طوری متصل کنم که امکانات داشبورد در یک صفحه با استایل یکسان نمایش داده بشن و هر کدوم با قالبی متفاوت نمایش داده نشن.بخصوص الان که دیگه باید دو نمونه داشبورد طراحی کنم.و موندم چطور بخش های مورد نیاز هر داشبورد رو طوری اضافه کنم که مثل داشبورد ووکامرس, هر قسمت درون همون داشبورد بارگذاری شه (مثلا روی سفارشات که میزنیم, برگه سفارشات جداگانه طراحی شده اما در یک استایل خاص که مربوط به داشبورد هست نشون داده میشه و برای تمام بخش ها یکسانه)

2-بعد بر فرض مثال دو نوع نقش داریم: caster و team  با دو صفحه داشبورد cast-dash و team-dash  . میشه لطف کنی کدهای بالا رو یکسان کنی باهاش که متوجه شم کجاهاشو باید تغییر بدم؟

  • Like 1
لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر

در 3 ساعت قبل، mahdi6 گفته است :

 

 

1-برام قابل فهمه توضیحاتت اما توی اجرا مشکل دارم . من بلد نیستم که چطور یک صفحه داشبورد رو طوری متصل کنم که امکانات داشبورد در یک صفحه با استایل یکسان نمایش داده بشن و هر کدوم با قالبی متفاوت نمایش داده نشن.بخصوص الان که دیگه باید دو نمونه داشبورد طراحی کنم.و موندم چطور بخش های مورد نیاز هر داشبورد رو طوری اضافه کنم که مثل داشبورد ووکامرس, هر قسمت درون همون داشبورد بارگذاری شه (مثلا روی سفارشات که میزنیم, برگه سفارشات جداگانه طراحی شده اما در یک استایل خاص که مربوط به داشبورد هست نشون داده میشه و برای تمام بخش ها یکسانه)

2-بعد بر فرض مثال دو نوع نقش داریم: caster و team  با دو صفحه داشبورد cast-dash و team-dash  . میشه لطف کنی کدهای بالا رو یکسان کنی باهاش که متوجه شم کجاهاشو باید تغییر بدم؟

سلام میتونید

از افزونه ی داشبورد مثل user pro و wp user frontend استفاده کنید.

  • Like 1
لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر

در در ۱۴۰۰/۱۰/۲۰ در 16:43، tag1 گفته است :

سلام میتونید

از افزونه ی داشبورد مثل user pro و wp user frontend استفاده کنید.

 

سلام عزیز ممنون بابت پاسخگویی

از هر دو افزونه بصورت ترکیبی استفاده کنم یا یکی کافیه برای کار من؟

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

در 2 ساعت قبل، mahdi6 گفته است :

 

سلام عزیز ممنون بابت پاسخگویی

از هر دو افزونه بصورت ترکیبی استفاده کنم یا یکی کافیه برای کار من؟

نمیتونید همزمان استفاده کنید،سایتتون به تداخل میفته.اما بستگی به سلیقه خودتون داره.user pro بک اند کاره و ظاهره جذابی نداره؛اما اگر ظاهر براتون مهمه میتونید از wp user frontend استفاده کنید.

  • Like 1
لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر

  • 4 هفته پیش...

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

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

 

 

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

  • مدیر انجمن
در 21 دقیقه قبل، mahdi6 گفته است :

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

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

سلام؛

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

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

  • لینک ها تنها برای اعضای سایت قابل نمایش است.

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

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

  • Like 1
لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر

مهمان
این موضوع برای عدم ارسال قفل گردیده است.
×
×
  • اضافه کردن...