Restablecer contraseña - Cambiar nombre y dirección de correo electrónico del remitente
Cuando se envía el restablecimiento de contraseña, el nombre que aparece es 'WordPress' y la dirección de correo es wordpress@domain.com. Necesito cambiarlos por el nombre de la empresa.
Estoy ejecutando WordPress 3.8 multisite y he realizado lo siguiente:
- Actualicé el nombre y la dirección de correo electrónico en la configuración general del subsitio
- Instalé el plugin 'WP Change Email' y actualicé los datos
Sin embargo, esto no tiene efecto. Creo que es porque el restablecimiento de contraseña utiliza diferentes hooks.
Estoy usando el siguiente código (de http://s14.codeinspot.com/q/2472332) en functions.php para personalizar el asunto y el cuerpo del restablecimiento de contraseña:
function my_retrieve_password_subject_filter($old_subject) {
// $old_subject es el asunto predeterminado creado por WordPress.
// (No tienes que usarlo)
$blogname = wp_specialchars_decode(get_option('blogname'), ENT_QUOTES);
$subject = sprintf( __('[%s] Restablecimiento de contraseña'), $blogname );
// Así es como WordPress crea la línea de asunto. Se ve así:
// [Blog de Juan] Restablecimiento de contraseña
// Puedes cambiar esto según tus necesidades.
// Debes devolver tu nueva línea de asunto:
return $subject;
}
function my_retrieve_password_message_filter($old_message, $key) {
// $old_message es el mensaje predeterminado ya creado por WordPress.
// (No tienes que usarlo)
// $key es el token que permite al usuario obtener
// una nueva contraseña
$message = __('Alguien ha solicitado restablecer la contraseña para el siguiente sitio y nombre de usuario.') . "\r\n\r\n";
$message .= network_site_url() . "\r\n\r\n";
$message .= sprintf(__('Nombre de usuario: %s'), $user_login) . "\r\n\r\n";
$message .= __('Para restablecer tu contraseña visita la siguiente dirección, de lo contrario ignora este correo y no pasará nada.') . "\r\n\r\n";
$message .= network_site_url("wp-login.php?action=rp&key=$key&login=" . rawurlencode($user_login), 'login') . "\r\n";
// Así es como WordPress crea el mensaje.
// Puedes cambiarlo para satisfacer tus necesidades.
// Debes devolver tu nuevo mensaje:
return $message;
}
// Para activar estos filtros:
add_filter ( 'retrieve_password_title', 'my_retrieve_password_subject_filter', 10, 1 );
add_filter ( 'retrieve_password_message', 'my_retrieve_password_message_filter', 10, 2 );
Sin embargo, no sé cómo extender esto para cambiar el nombre y dirección de correo electrónico del remitente.

Puedes usar los siguientes dos hooks para cambiar el nombre y la dirección de correo electrónico
Utiliza lo siguiente en el archivo functions.php
de tu tema activo.
add_filter( 'wp_mail_from', 'wpse_new_mail_from' );
function wpse_new_mail_from( $old ) {
return 'tu dirección de correo electrónico'; // Edítalo con tu dirección de correo
}
add_filter('wp_mail_from_name', 'wpse_new_mail_from_name');
function wpse_new_mail_from_name( $old ) {
return 'tu nombre o el de tu sitio web'; // Edítalo con tu nombre o el de tu empresa
}

Usa el siguiente código en el archivo functions.php
de tu tema activo. No es necesario codificar manualmente tu dirección de correo electrónico y el nombre del blog, ya que obtiene ambos valores de la configuración de WordPress en Ajustes > Generales.
add_filter( 'wp_mail_from', 'new_mail_from' );
add_filter( 'wp_mail_from_name', 'new_mail_from_name' );
function new_mail_from( $old ) {
return get_option( 'admin_email' );
}
function new_mail_from_name( $old ) {
return get_option( 'blogname' );
}
