cambio de correos electrónicos de notificación de WordPress <wordpress> @ mydomain.net a otra cosa

15

¿Cómo cambio la dirección de correo electrónico de notificación de WordPress @ mydomain.net a otra?

Quiero hacer esto porque WordPress @ mydomain.net termina siendo marcado como correo basura.

Gracias

Daniel

Rarst
fuente
1
¿Por qué no agrega la dirección a su lista de remitentes seguros? entonces no terminará en el correo basura.
t31os
1
Eso funcionaría para mí pero no para mis usuarios.
Eso es justo, no estaba claro que no solo te estuvieras refiriendo a ti mismo en la pregunta inicial.
t31os

Respuestas:

23

Utilizo un enfoque muy similar, como John P Bloch y Bainternet, un poco más flexible, por lo que no tengo que cambiar la dirección de correo de ningún cliente:

<?php # -*- coding: utf-8 -*-
/*
 * Plugin Name: Filter System From Mail
 * Description: Sets the WP from mail address to the first admin’s mail and the from name to blog name.
 * Version:     2012.08.30
 * Author:      Fuxia Scholz
 * Author URI:  https://fuxia.me
 * License:     MIT
 */

if ( ! function_exists( 't5_filter_system_from_mail' ) )
{
    /**
     * First admin's e-mail address or blog name depending on current filter.
     *
     * See wp-includes/pluggable.php::wp_mail()
     *
     * @param  $input Name or email address
     * @return string
     */
    function t5_filter_system_from_mail( $input )
    {
        // not the default address, probably a comment notification.
        if ( 0 !== stripos( $input, 'wordpress' ) )
            return $input; // Not auto-generated

        return get_option( 'wp_mail_from' === current_filter()
            ? 'admin_email' : 'blogname' );
    }

    add_filter( 'wp_mail_from',      't5_filter_system_from_mail' );
    add_filter( 'wp_mail_from_name', 't5_filter_system_from_mail' );
}
fuxia
fuente
66
Solución muy elegante. ¡Agradable!
John P Bloch
@fuxia Soy un novato de Wordpress. ¿A dónde va este código? ¿Es este un complemento completamente nuevo? Si es así, ¿cómo lo instalo? ¿Y t5_este es tu prefijo de complemento personal? ¿O importa de alguna manera?
Lorenz Meyer
@LorenzMeyer Sí, un archivo PHP separado, guardado en el directorio de complementos de su instalación. Allí puedes activarlo. t5_Era mi prefijo personal en aquel entonces. :)
fuxia
9

Hay un gran complemento que hace esto por usted llamado Enviar desde . Sin embargo, si quieres tirar esto tú mismo, es muy simple. Para cambiar la dirección de correo electrónico agregue un filtro en'wp_mail_from' así:

function just_use_my_email(){
  return '[email protected]';
}

add_filter( 'wp_mail_from', 'just_use_my_email' );

Y también puede cambiar el nombre del remitente usando el 'wp_mail_from_name'filtro de esta manera (esto es completamente opcional):

function just_use_my_email_name(){
  return 'My Real Name';
}

add_filter( 'wp_mail_from_name', 'just_use_my_email_name' );

Simplemente cambie los valores falsos por su dirección de correo electrónico real y estará listo.

John P Bloch
fuente
4

aquí:

    //email from name function
function my_wp_mail_from_name($name) {
    return 'Name';
}

//email from email function
function my_wp_mail_from($content_type) {
  return '[email protected]';
}

add_filter('wp_mail_from','my_wp_mail_from');
add_filter('wp_mail_from_name','my_wp_mail_from_name');

Cambie Nombre al nombre que desee y [email protected] a la dirección de correo electrónico que desee. pero si cambia la dirección de correo electrónico, la mayoría de los filtros anti span bloquearán o enviarán spam a su correo para suplantación.

Bainternet
fuente
Utilicé Enviar formulario y funciona como se anuncia. También creé una dirección de correo electrónico [email protected] y configuré el formulario de envío para usarlo para notificaciones automáticas del sitio. El filtro de spam no marcó el correo electrónico de prueba que envié a mi cuenta de usuario de prueba. ¡Éxito! Ahora tengo que probar con mis usuarios. ¡Gracias!
4

Las respuestas existentes son una mejor manera de hacer esto, sin embargo, hay una alternativa que me gustaría mencionar.

add_action('phpmailer_init','modify_phpmailer');

function modify_phpmailer($phpmailer) {

    $phpmailer->From = "Full Name";
    $phpmailer->FromName = "[email protected]";

    $phpmailer->AddReplyTo("[email protected]");
}

Esto sucede después de los filtros * wp_mail_from * y * wp_mail_from_name *. Entonces, con esto, puede forzar un cambio y evitar que otros complementos lo modifiquen. También puede trabajar directamente con el objeto phpmailer y hacer cosas como agregar una respuesta a la dirección (que se muestra arriba)

Rohmann
fuente