Beveiliging Code snippets Plugins

Een password reset email sturen na automatisch aanmaken van een WordPress gebruiker

Soms is het nodig om via maatwerk code gebruikers aan te kunnen maken in WordPress, hetzij via een import, hetzij via een “maak gebruiker aan” knop aan de front-end van de website waarmee je andere gebruikers wilt aanmelden. Het is dan wel handig als de nieuwe gebruiker een wachtwoord in kan stellen.

Ik dacht eerst gebruik te maken van de resetpassword link, maar dan moet de gebruiker eerst zijn email adres invullen, daarna krijgt hij een reset link per email, en vervolgens kan de gebruiker via de link het wachtwoord resetten. Het is natuurlijk veel handiger als de gebruiker direct de tweede link krijgt.

Daarvoor moet je een key aanmaken, de password reset key. Deze is tijdelijk geldig.

De onderstaande code genereert een email. Denk erom dat de functie die de email stuurt nog wel geschreven moet worden. Kijk hiervoor bij dit artikel

function dtc_send_password_reset_mail($user_id){

    $user = get_user_by('id', $user_id);
    $firstname = $user->first_name;
    $email = $user->user_email;
    $adt_rp_key = get_password_reset_key( $user );
    $user_login = $user->user_login;
    $rp_link = '<a href="' . wp_login_url()."/resetpass/?key=$adt_rp_key&login=" . rawurlencode($user_login) . '">' . wp_login_url()."/resetpass/?key=$adt_rp_key&login=" . rawurlencode($user_login) . '</a>';

    if ($firstname == "") $firstname = "gebruiker";
    $message = "Hi ".$firstname.",<br>";
    $message .= "An account has been created on ".get_bloginfo( 'name' )." for email address ".$email."<br>";
    $message .= "Click here to set the password for your account: <br>";
    $message .= $rp_link.'<br>';

    //deze functie moet je zelf nog toevoegen. 
    dtc_send_email($email, __("Your account on ".get_bloginfo( 'name'), "dtc"), $message);

}

Related Articles

  • Sorteren op custom taxonomie in WordPress

    Voor een project met eigen post types, maatwerk velden, en een maatwerk taxonomie structuur (Categorieën van tags zijn bijvoorbeeld een taxonomie), was het nodig om te kunnen sorteren op een...
  • Je WordPress website sneller maken

    Een WordPress website kan behoorlijk snel zijn: WordPress is niet zozeer de vertragende factor. Wat de snelheid vaak drukt is een zeer configureerbaar theme, of een combinatie van een theme...
  • Dynamisch de alt en title van een afbeelding aanpassen

    Alt en title vaak niet ingevuld Als je automatisch afbeeldingen importeert, je hebt website redacteuren die de alt tags niet invullen, of je neemt een site in beheer waar dat...
  • Je eigen session variabele in WordPress

    Regelmatig heb ik een sessie variabele nodig in verschillende projecten. Een hele simpele manier om dit te doen is wp session manager. Installeer en activeer de plugin, en je kan...

Laat een reactie achter