it-swarm.com.de

authentifizieren Sie den Benutzer ohne Passwort über den E-Mail-Aktivierungslink

Ich habe meine eigene Aktivierungsmail für neue Benutzer, die von einem Administrator über ein Plugin im wp-Backend hinzugefügt werden. Der Benutzer wird auch als Autor zu einem Beitrag hinzugefügt, und ich möchte, dass er den Beitrag aktiviert (wodurch er veröffentlicht wird), wenn er die E-Mail erhält und auf den Link klickt. Derzeit erhält der Benutzer eine E-Mail mit einem Aktivierungslink, muss sich jedoch anmelden und wird nicht zum Aktivierungsbildschirm weitergeleitet. Ist es möglich, den Benutzer durch Erhalt des Aktivierungsschlüssels und der Post-ID über die URL zu authentifizieren? Der Schlüssel wird in seinem Beitrag als benutzerdefiniertes Feld gespeichert. Ich möchte, dass dieser Prozess ihn automatisch anmeldet und ihm ermöglicht, über eine Front-End-Seite auf seinen Beitrag zuzugreifen.

2
Innate

Um einen Benutzer programmatisch anzumelden, können Sie Folgendes verwenden:

    //Login the user
$creds = array();
$creds['user_login'] = $login;
$creds['user_password'] = $password;
if ( !empty( $remember ) ){ 
    $creds['remember'] = true;
}
$user = wp_signon( $creds, true );

wie Sie sehen, muss das Kennwort jedoch vorhanden sein. Fügen Sie es einfach zu Ihrer Aktivierungs-URL & pw = pasword hinzu und rufen Sie es mit $ _GET ['pw'] auf.

1
Bainternet