Benutzerdefiniertes Login-Formular für den Frontend User Ass sowie Admin

Ich arbeite an einer Eheseite. Ich habe ein Anmelde- und Registrierungsformular für den Benutzer erstellt. Und zum Speichern von Informationen habe ich benutzerdefinierte Tabellen erstellt. In meinem Login-Formular gibt es zwei Felder EmailID und Passwort. Für andere Benutzer kann ich überprüfen, ob der Benutzer registriert ist. Aber mit der gleichen Form, wie kann ich überprüfen, Benutzer ist Administrator? Es gibt ein Problem mit dem Passwortfeld. (Nach erfolgreichem Login möchte ich Admin auf einige Seiten Likes Bericht und alle redirect) Also die Dashboard Login und dieses Login müssen separat sein

Solutions Collecting From Web of "Benutzerdefiniertes Login-Formular für den Frontend User Ass sowie Admin"

Warum haben Sie zuerst benutzerdefinierte Tabellen erstellt? Es gibt die Tabelle wp_usermeta zum Speichern beliebiger zusätzlicher Daten, um benutzerdefinierte Benutzerprofile mit zusätzlichen Feldern zu erstellen.

Außerdem können Sie sich in den nativen WP-Anmeldeprozess einklinken und das Einloggen mit E-Mail zulassen.

Welche Art der Anmeldung verwendest du?

Überprüfen, ob der Benutzer Administrator ist:

if ( current_user_can( 'manage_options' ) ) { /* A user with admin privileges */ wp_redirect( 'YOUR_TARGET_ABSOLUTE_URL' ); exit; } 

Aber es gibt sogar einen besseren Weg, wie im Codex beschrieben:

 function my_login_redirect( $redirect_to, $request, $user ) { //is there a user to check? global $user; 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; } } add_filter( 'login_redirect', 'my_login_redirect', 10, 3 ); 

Die function ist ziemlich selbsterklärend. Ändern Sie $ redirect_to in ein Ziel Ihrer Wahl.