2017-04-19 3 views
0

Ich kann wp_mail nicht senden, wenn Beiträge in den Papierkorb verschoben werden. Unten ist die Funktion, die ich verwende. Wenn jemand helfen könnte.Senden von wp_mail auf Post-Papierkorb nicht möglich

function post_rejection_email() { 

      //Email Setup 
      $post_status = get_post_meta(the_ID(), 'post_status', true); 
      $post_name = $post->post_title; 

      //Email Details 
      $email = get_the_author_meta('user_email'); 
      $author_name = the_author_meta('first_name'); 
      $subject = 'Sorry, your post has been refused.'; 
      $post_type = 'event_listing'; 

      $message = 'Dear ' . $author_name . '. Unfortunately your post: ' . $post_name . ' has been refused.'; 

      if ($post_status == 'trash' && $post->post_type == $post_type) {   
        wp_mail($email, $subject, $message); 
      } 
    } 
    add_action('transition_post_status', 'post_rejection_email', 10, 3); 

Ich bekomme keine E-Mail. Ich weiß nicht, wo ich falsch liege. Bitte helfen Sie.

+0

Sind Sie sicher, dass Ihr Code die IF-Anweisung eingeben? – cosmoonot

+0

Das ist, was ich versuche herauszufinden. Ist ihr irgendetwas was ich falsch mache? –

+0

Ich denke, es ist nicht der "Müll" Status .. Ich habe eine andere Funktion mit unterschiedlichen Status und das funktioniert gut .. Nur mit post_status = 'Müll' tut nichts .. –

Antwort

0

Ich arbeite mit Wordpress ein wenig. Es sieht so aus, als ob die E-Mail an den Autor des Posts gesendet wird, der an den Papierkorb gesendet wird, nicht an Sie (es sei denn, Sie testen dies als Autor des gelöschten Posts und es funktioniert nicht).

Wenn Sie auch von dieser außer dem Autor der Post benachrichtigt werden wollen, versuchen unten, dass man eine neue E-Mail-Funktion Hinzufügen ...

wp_mail($email, $subject, $message); 
wp_mail('[email protected]', $subject, $message); 

Wenn es unabhängig überhaupt nur nicht funktioniert, dann Es gibt ein Problem mit der E-Mail-Funktion Ihrer Wordpress-Installation. Weitere Informationen und Beispiele zur Funktionsweise der wp_mail-Funktion (einschließlich der Konfiguration von Dingen wie SMTP-Mail) finden Sie hier: https://developer.wordpress.org/reference/functions/wp_mail/

+0

Wenn ich wp_mail ('my @ email.com ',' Testperson ',' Testnachricht '); es funktioniert gut. Auch ich habe Zugriff auf den Autoraccount. Wenn ich die Variablen innerhalb der wp_mail() verwende, wird keine E-Mail gesendet. sonst funktioniert es gut. Ich habe eine andere Funktion für verschiedene Post-Status, die auch gut funktioniert. Nur mit post_status == 'trash' wird nichts gesendet. Weiß nicht, was das Problem ist. –

Verwandte Themen