WordPress Login Umleitung nach Benutzerrolle

In meiner Anwendung muss sich ein Benutzer zuerst anmelden und dann auf die Website zugreifen.

Auf meiner Website werden 3 verschiedene Benutzerrollen verwendet

  1. Administrator
  2. Editor
  3. Mitwirkender

Benutzer kann sich anmelden von

http://example.com/wordpress/wp-login.php 

Kein Login von einer Designvorlage.

Ich habe diesen Code gefunden, aber es funktioniert nicht

 function my_login_redirect_contributors() { if ( current_user_can('contributor') ){ return 'url-to-redirect-to'; } } add_filter('login_redirect', 'my_login_redirect_contributors'); 

Hinweis: Ich möchte kein Plugin wie Peter’s Login Redirect verwenden. Ich möchte es erreichen, indem ich wp-corecode mit einem Filter besonders anpasse.

Solutions Collecting From Web of "WordPress Login Umleitung nach Benutzerrolle"

Sie verwenden den Filter falsch . Wenn Sie mehr als ein @param , müssen Sie diese beim Hinzufügen des Filters angeben.

 function wpse40745_redirect_on_login( $redirect_to, isset( $_REQUEST['redirect_to'] ), $user ) { # uncomment the following line if it's not working and replace $user->roles[0] with something that works // echo '
'; print_r( $user ); echo '

'; exit; if ( in_array( $user->roles[0], array( 'contributer', 'whatever_other_role ) ) ) return home_url(); return $redirect_to; } add_filter( 'login_redirect', 'wpse40745_redirect_on_login', 20, 3 );