changer les emails de notification de WordPress [email protected] en quelque chose d'autre

14

Comment puis-je changer l'adresse électronique des notifications de WordPress @ mydomain.net par un autre nom?

Je souhaite le faire car WordPress @ mydomain.net finit par être signalé comme courrier indésirable.

Merci

Daniel

    
posée Rarst 18.03.2011 - 13:21

4 réponses

22

J'utilise une approche très similaire à celle de John P Bloch et Bainternet, juste un peu plus souple, je n'ai donc pas besoin de changer l'adresse e-mail d'un client:

<?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' );
}
    
réponse donnée fuxia 18.03.2011 - 16:17
9

Il existe un excellent plugin appelé Envoyer de . Cependant, si vous voulez le faire vous-même, c'est très simple. Pour changer l'adresse e-mail, ajoutez un filtre sur 'wp_mail_from' comme suit:

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

add_filter( 'wp_mail_from', 'just_use_my_email' );

Et vous pouvez également changer le nom de l'expéditeur en utilisant le filtre 'wp_mail_from_name' comme suit (ceci est entièrement facultatif):

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

add_filter( 'wp_mail_from_name', 'just_use_my_email_name' );

Échangez simplement les fausses valeurs de votre adresse électronique réelle et vous êtes prêt à partir.

    
réponse donnée John P Bloch 18.03.2011 - 15:48
4

ici:

    //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');

Remplacez Nom par le nom de votre choix et par email, par courrier é[email protected], par l’adresse électronique de votre choix. mais si vous modifiez l'adresse e-mail, la plupart des filtres anti-filtrage bloquent ou spamment votre courrier pour le spoofing.

    
réponse donnée Bainternet 18.03.2011 - 15:48
4

Les réponses existantes sont un meilleur moyen de le faire. Cependant, je voudrais mentionner une alternative.

add_action('phpmailer_init','modify_phpmailer');

function modify_phpmailer($phpmailer) {

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

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

Cela se produit après les filtres * wp_mail_from * et * wp_mail_from_name *. Donc, avec cela, vous pouvez forcer une modification et empêcher les autres plugins de la modifier. Vous pouvez aussi travailler directement avec l’objet phpmailer et faire des choses comme ajouter une réponse à une adresse (voir ci-dessus)

    
réponse donnée rohmann 10.10.2013 - 02:03

Lire d'autres questions sur les étiquettes