Source View: retrieve_password

To save our bandwidth, we show only a snippet of code around each occurence of the hook. View complete file in SVN (without highlighting).

Understanding Source Code

The best way to understand what a hook does is to look at where it occurs in the source code.

  • Action hooks look like this: do_action( "hook_name" )
  • Filter hooks look like this: apply_filters( "hook_name", "what_to_filter" ).

Remember, this hook may occur in more than one file. Moreover, the hook's context may change from version to version.

Source View

Line Code
92      $user_data = get_userdatabylogin($_POST['user_login']);
93      // redefining user_login ensures we return the right case in the email
94      $user_login = $user_data->user_login;
95      $user_email = $user_data->user_email;
97      if (!$user_email || $user_email != $_POST['email'])
98           die(sprintf(__('Sorry, that user does not seem to exist in our database. Perhaps you have the wrong username or e-mail address? <a href="%s">Try again</a>.'), 'wp-login.php?action=lostpassword'));
100 do_action('retreive_password', $user_login);  // Misspelled and deprecated.
101 do_action('retrieve_password', $user_login);
103      // Generate something random for a password... md5'ing current time with a rand salt
104      $key = substr( md5( uniqid( microtime() ) ), 0, 50);
105      // now insert the new pass md5'd into the db
106       $wpdb->query("UPDATE $wpdb->users SET user_activation_key = '$key' WHERE user_login = '$user_login'");
107      $message = __('Someone has asked to reset the password for the following site and username.') . "\r\n\r\n";
108      $message .= get_option('siteurl') . "\r\n\r\n";
109      $message .= sprintf(__('Username: %s'), $user_login) . "\r\n\r\n";
110      $message .= __('To reset your password visit the following address, otherwise just ignore this email and nothing will happen.') . "\r\n\r\n";