Redirect beim Zugriff auf / Login wenn eingeloggt

Ich verwende Theme My Login plugin, um die Login-Seite von “/wp-login.php” nach “/ login” zu ändern.

Meine Frage ist, wie leite ich einen Benutzer um, der bereits angemeldet ist, so dass der Besuch von “/ login” sie stattdessen auf meine Homepage bringt?

Hinweis: Ich spreche nicht von der initialen Weiterleitung nach dem Login, sondern davon, ob jemand die Login-Seite später wieder besuchen sollte.

Ich sah, dass eine ähnliche Frage hier gestellt wurde: wp-login.php – Leite eingeloggte Benutzer zu einer benutzerdefinierten URL um

Ich habe versucht, den dort angegebenen Code zu verwenden und habe ihn wie folgt geändert:

function redirect_logged_in_user() { if( is_user_logged_in ) { wp_redirect('http://my_homepage_url'); } } global $pagenow; if( $pagenow == '/login') redirect_logged_in_user(); 

aber es funktioniert immer noch nicht.

jede Hilfe würde sehr geschätzt werden.

Prost.

Solutions Collecting From Web of "Redirect beim Zugriff auf / Login wenn eingeloggt"

  add_action('wp', 'add_login_check'); function add_login_check() { if ( is_user_logged_in() && is_page( [6070, 6072] ) ) { wp_redirect('http://my_homepage_url'); exit; } } 

Ich nahm den Code von hier: https://Stackoverflow.com/a/25992092

Ich habe dann die “add_action (‘wp’, ‘add_login_check’);” nach oben und fügte ein weiteres “is_page” hinzu (6070 = Anmeldeseiten-ID, 6072 = Registerseiten-ID).

es scheint sich so weit zu halten und erlaubt mir, mich auszuloggen.

Ist dieser Code gut geschrieben? Wäre es notwendig etwas zu ändern?

Ich rate dir, dies zu versuchen, besser für die Aktion login_init :

 add_action('login_init', 'redirect_logged_in_user'); function redirect_logged_in_user() { global $action; /* if the user call logout and is not logged in we do nothing*/ if ('logout' === $action || !is_user_logged_in()) { return; } /* we redirect logged in people*/ wp_redirect('http://my_homepage_url'); exit; }