zmienianie e-maili z powiadomieniami z WordPress <wordpress> @ mydomain.net na coś innego


15

Jak zmienić adres e-mail z powiadomieniem z WordPress @ mydomain.net na coś innego.

Chcę to zrobić, ponieważ WordPress @ mydomain.net kończy się oznaczeniem jako śmieci.

Dzięki

Daniel


1
Dlaczego nie dodać adresu do listy bezpiecznych nadawców? to nie trafi do śmieci.
t31os

1
To by działało dla mnie, ale nie dla moich użytkowników.

To dość sprawiedliwe, nie było jasne, że nie mówiłeś tylko o sobie w pytaniu otwierającym.
t31os

Odpowiedzi:


23

Używam bardzo podobnego podejścia, takiego jak John P Bloch i Bainternet, trochę bardziej elastycznego, więc nie muszę zmieniać adresu pocztowego dla żadnego klienta:

<?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' );
}

6
Bardzo eleganckie rozwiązanie. Ładny!
John P Bloch

@fuxia Jestem nowicjuszem Wordpress. Gdzie idzie ten kod? Czy to zwykła nowa wtyczka? Jeśli tak, to jak to zainstalować? Czy t5_to twój osobisty prefiks wtyczki? Czy to ma jakieś znaczenie?
Lorenz Meyer,

@LorenzMeyer Tak, osobny plik PHP, zapisany w katalogu wtyczek twojej instalacji. Tam możesz go aktywować. t5_był wtedy moim osobistym prefiksem. :)
fuxia

9

Jest świetna wtyczka, która robi to za Ciebie, o nazwie Send From . Jeśli jednak chcesz sam to rzucić, jest to bardzo proste. Aby zmienić adres e-mail, dodaj filtr 'wp_mail_from':

function just_use_my_email(){
  return 'my.email@domain.com';
}

add_filter( 'wp_mail_from', 'just_use_my_email' );

Możesz także zmienić nazwę nadawcy, używając takiego 'wp_mail_from_name'filtru (jest to całkowicie opcjonalne):

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

add_filter( 'wp_mail_from_name', 'just_use_my_email_name' );

Po prostu zamień fałszywe wartości na swój prawdziwy adres e-mail i gotowe.


4

tutaj:

    //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@Domain.com';
}

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

Zmień Nazwę na żądaną nazwę i email@Domain.com na pożądany adres e-mail. ale jeśli zmienisz adres e-mail, większość filtrów antyspanowych zablokuje lub spamuje Twoją pocztę w celu sfałszowania.


Skorzystałem z formularza wysyłania i działa jak w reklamie. Utworzyłem również adres e-mail cas@mydomain.net i skonfigurowałem formularz wysyłania, aby używać go do automatycznych powiadomień na stronie. E-mail testowy wysłany na moje testowe konto użytkownika nie został oznaczony przez filtr antyspamowy. Sukces! Teraz muszę przetestować z moimi użytkownikami. Dzięki!

4

Istniejące odpowiedzi są lepszym sposobem na zrobienie tego, jednak istnieje alternatywa, o której chciałbym wspomnieć.

add_action('phpmailer_init','modify_phpmailer');

function modify_phpmailer($phpmailer) {

    $phpmailer->From = "Full Name";
    $phpmailer->FromName = "from@address.com";

    $phpmailer->AddReplyTo("replyto@address.com");
}

Dzieje się tak po filtrach * wp_mail_from * i * wp_mail_from_name *. Dzięki temu możesz wymusić zmianę i uniemożliwić modyfikowanie jej przez inne wtyczki. Możesz także pracować bezpośrednio z obiektem phpmailer i wykonywać takie czynności, jak dodawanie odpowiedzi na adres (pokazany powyżej)

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.