Add to snippet or functions.php of your child theme this code and modify as you like:
xxxxxxxxxx
// Change default wordpress e-mail for reseting password
add_filter( 'retrieve_password_message', 'my_retrieve_password_message', 10, 4 );
function my_retrieve_password_message( $message, $key, $user_login, $user_data ) {
// Start with the default content.
$site_name = wp_specialchars_decode( get_option( 'blogname' ), ENT_QUOTES );
$message = __( 'Someone has requested a password reset for the following account:' ) . "\r\n\r\n";
/* translators: %s: site name */
$message .= sprintf( __( 'Site Name: %s' ), $site_name ) . "\r\n\r\n";
/* translators: %s: user login */
$message .= sprintf( __( 'Username: %s' ), $user_login ) . "\r\n\r\n";
$message .= __( 'If this was a mistake, just ignore this email and nothing will happen.' ) . "\r\n\r\n";
$message .= __( 'To reset your password, visit the following address:' ) . "\r\n\r\n";
$message .= '<' . network_site_url( "wp-login.php?action=rp&key=$key&login=" . rawurlencode( $user_login ), 'login' ) . ">\r\n";
/*
* If the problem persists with this filter, remove
* the last line above and use the line below by
* removing "//" (which comments it out) and hard
* coding the domain to your site, thus avoiding
* the network_site_url() function.
*/
// $message .= '<http://yoursite.com/wp-login.php?action=rp&key=' . $key . '&login=' . rawurlencode( $user_login ) . ">\r\n";
// Return the filtered message.
return $message;
}
xxxxxxxxxx
// Change wordpress email title (in restore password mail)
add_filter('retrieve_password_title', 'wpsf_update_retrieve_password_title');
function wpsf_update_retrieve_password_title($title)
{
// return str_replace('Password Reset', 'Help Logging In', $title);
return __('Reset your Password'); // New translatable string
}