web-dev-qa-db-fra.com

Personnalisation de l'email de mot de passe perdu

Je dois modifier le texte de l'e-mail par défaut qui sera envoyé pour récupérer le mot de passe. J'ai déjà changé le mail d'activation en multisite:

// Start changing email body
function myprefix_change_activation_email_body ($old_body, $domain, $path, $title, $user, $user_email, $key, $meta) {
    $my_message .= "\n\nhello {$user} ,welcome to {$domain} !\n\n";

    // ... other stuff
    return $my_message;
}
add_filter('wpmu_signup_blog_notification_email', 'myprefix_change_activation_email_body', 10, 8);
// End changing email body

// Start changing email subject
function myprefix_change_activation_email_subject ($old_subject, $domain, $path, $title, $user, $user_email, $key, $meta) {
    $my_subject = "my subject";
    return $my_subject;
}
add_filter('wpmu_signup_blog_notification_subject', 'myprefix_change_activation_email_subject', 10, 8);
4
Ghinnersmee

Vous voulez les filtres ...

retrieve_password_message pour le contenu réel de l'email. Votre fonction accrochée recevra le message comme premier argument et la clé de réinitialisation de l'utilisateur comme second.

<?php
add_filter('retrieve_password_message', 'wpse103299_reset_msg', 10, 2);
function wpse103299_reset_msg($message, $reset_key)
{
    // ...
}

retrieve_password_title pour le sujet de l'email.

<?php
add_filter('retrieve_password_title', 'wpse103299_reset_subject');
function wpse103299_reset_subject($subject)
{
    // ...
}

Examinez la fonction retrieve_password que vous pouvez trouver dans wp-login.php.

9
chrisguitarguy