Omdiriger en admin-brugerrolle ved login med login-omdirigering | WP strande


Du kan omdirigere en bruger baseret på deres WordPress-rolle med login_redirect filter.


add_filter( 'login_redirect', 'themeprefix_login_redirect', 10, 3 );
/**
* Redirect user after successful login.
*
* @param string $redirect_to URL to redirect to.
* @param string $request URL the user is coming from.
* @param object $user Logged user's data.
* @return string
*/
function themeprefix_login_redirect( $redirect_to, $request, $user ) {
//is there a user to check?
if ( isset( $user->roles ) && is_array( $user->roles ) ) {
//check for admins
if ( in_array( 'administrator', $user->roles ) ) {
// redirect them to the default place
return $redirect_to;
} else {
return home_url();
}
} else {
return $redirect_to;
}
}

I ovenstående skal alle administratorbrugere gå wp-admin ved login hver anden rolle går til webstedets hjemmeside-URL.



add_filter( 'login_redirect', 'themeprefix_login_redirect', 10, 3 );
/**
* Redirect user after successful login.
*
* @param string $redirect_to URL to redirect to.
* @param string $request URL the user is coming from.
* @param object $user Logged user's data.
* @return string
*/
function themeprefix_login_redirect( $redirect_to, $request, $user ){

//is there a user to check?

if ( isset( $user->roles ) && is_array( $user->roles ) ) {

//check for admins
if ( in_array( 'administrator', $user->roles ) ) {

$redirect_to = '/wp-admin/'; // Your redirect URL
}
}

return $redirect_to;
}


I den ændrede kode ovenfor er enhver administrator tvunget til wp-admin som $ redirect_to variabel nulstilles.