Heim >CMS-Tutorial >WordDrücken Sie >Richten Sie ein passwortfreies WordPress-Anmeldeformular ein

Richten Sie ein passwortfreies WordPress-Anmeldeformular ein

藏色散人
藏色散人nach vorne
2021-05-08 11:48:151711Durchsuche

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__(&#39;Username/email&#39;, &#39;theme-domain&#39;); ?>" class="form-control" required="required">
</div>
<input type="hidden" name="action" value="my_login_action" />
<button type="submit"><?php echo esc_html__(&#39;Login&#39;, &#39;theme-domain&#39;); ?></button>  
</form>

Dann fügen Sie den folgenden Code in die Theme-Funktionsvorlage „functions.php“ ein:

add_action(&#39;init&#39;, function(){
// Return if not the login request
if( !isset( $_POST[&#39;action&#39;] ) || $_POST[&#39;action&#39;] !== &#39;my_login_action&#39; )
return;
$result;
$username = $_POST[&#39;userlog&#39;];
if ( ! $result ) {
$result = get_user_by( &#39;email&#39;, $username ); // user email
}
if ( ! $result ) {
$result = get_user_by(&#39;login&#39;, $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( &#39;/&#39; ) );
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!

Stellungnahme:
Dieser Artikel ist reproduziert unter:zmingcx.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen