In der folgenden Spalte des WordPress-Tutorials erfahren Sie, wie Sie ein WordPress-Anmeldeformular ohne Eingabe eines Passworts einrichten. Ich hoffe, dass es Freunden in Not hilfreich sein wird!
WordPress-Anmeldeformular ohne Passworteingabe
Wenn Sie Ihrem WordPress-Theme ein Formular hinzufügen möchten, das keine Passworteingabe erfordert und sich durch die Eingabe Ihres Benutzernamens oder Ihrer E-Mail-Adresse anmelden kann, können Sie die folgende Methode verwenden.
Kopieren Sie den folgenden Code und fügen Sie ihn an der Stelle ein, an der Sie das Formular anzeigen möchten
<form autocomplete="off" method="post"> <div class="form-group"> <input id="userlog" name="userlog" type="text" placeholder="<?php echo esc_attr__('Username/email', 'theme-domain'); ?>" class="form-control" required="required"> </div> <input type="hidden" name="action" value="my_login_action" /> <button type="submit"><?php echo esc_html__('Login', 'theme-domain'); ?></button> </form>
Dann fügen Sie den folgenden Code in die Theme-Funktionsvorlage „functions.php“ ein:
add_action('init', function(){ // Return if not the login request if( !isset( $_POST['action'] ) || $_POST['action'] !== 'my_login_action' ) return; $result; $username = $_POST['userlog']; if ( ! $result ) { $result = get_user_by( 'email', $username ); // user email } if ( ! $result ) { $result = get_user_by('login', $username ); // user name } if ( !is_wp_error($result) ){ wp_clear_auth_cookie(); wp_set_current_user($result->ID); wp_set_auth_cookie($result->ID); wp_redirect( home_url( '/' ) ); exit; } die(); });
Nur für bestimmte Anlässe geeignet, unter normalen Umständen, wenn andere Ihre kennen Anmeldeinformationen, die Verwendung dieser Funktion ist sehr riskant...
Das obige ist der detaillierte Inhalt vonRichten Sie ein passwortfreies WordPress-Anmeldeformular ein. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!