Căutați o modalitate de a redirecționa utilizatorul după ce se autentifică, în funcție de rolul său? Acest fragment vă va ajuta să redirecționați utilizatorul autentificat în funcție de rolul său.
Instrucțiuni:
Tot ce trebuie să faceți este să adăugați acest cod în fișierul functions.php al temei dvs. sau într-un plugin specific site-ului:
function redirect_user_on_role()
{
//retrieve current user info
global $current_user;
get_currentuserinfo();
//If login user role is Subscriber
if ($current_user->user_level == 0)
{
wp_redirect( home_url() ); exit;
}
//If login user role is Contributor
else if ($current_user->user_level > 1)
{
wp_redirect( home_url() ); exit;
}
//If login user role is Editor
else if ($current_user->user_level >8)
{
wp_redirect( home_url() ); exit;
}
// For other roles
else
{
$redirect_to = 'http://google.com/';
return $redirect_to;
}
}
add_action('admin_init','redirect_user_on_role');
Notă: Dacă este prima dată când adăugați secvențe de cod în WordPress, consultați ghidul nostru despre cum să copiați / lipiți corect secvențe de cod în WordPress, pentru a nu vă defecta accidental site-ul.
Dacă v-a plăcut acest fragment de cod, vă rugăm să luați în considerare vizionarea altor articole de pe site, cum ar fi: Cele mai bune 6 plugin-uri de securitate WordPress comparate.
Mulțumesc!
Mă redirecționa la pagina principală și nu aveam acces la tabloul de bord ca administrator, așa că am eliminat ultima linie, funcționează perfect acum, mulțumesc!
Dacă faci asta, dezactivezi întregul script
Da, așa cum a menționat James, ultima linie activează scriptul, deci eliminarea acesteia împiedică rularea scriptului. Linia 24 trebuie setată la URL-ul corect.