it-swarm.com.de

Benachrichtige den Autor des Kommentars bei der Antwort

Um die Kommunikation zwischen Gastkommentatoren und Autoren zu verbessern, spiele ich mit einem Skript, das eine E-Mail an den Autor eines Kommentars sendet, wenn dieser eine Antwort erhält.

So sieht der Code bisher aus:

<?php
/* 
Plugin Name: Comment Reply Notifier
Plugin URI: http://wordpress.stackexchange.com/users/24875/christine-cooper
Version: 0.1
Author: Christine Cooper
Description: When someone replies to a comment, an email is sent to the writer of the replied comment.
Author URI: http://wordpress.stackexchange.com/users/24875/christine-cooper
*/

add_action('comment_post', 'comment');
function comment($comment_reply_id) 
{
    $comment = get_comment($comment_reply_id);
    if($comment->comment_parent != 0) 
    {
        $old_comment = get_comment($comment->comment_parent);
        if($old_comment->user_id == 0)
        {
            $email = $old_comment->comment_author_email;
            $name = $comment->comment_author;
            $content = $comment->comment_content;
            $post = get_post($comment->comment_post_ID);
            $title = $post->post_title;
            $link = get_permalink($comment->comment_post_ID);
            $blogname = wp_specialchars_decode(get_option('blogname'), ENT_QUOTES);
            $subject = sprintf('Comment reply: "%2$s" at %1$s', $blogname, $title );
            $notify_message  = sprintf('Someone replied to a comment you left on: %s', $title ) . "\r\n";
            $notify_message .= sprintf( 'Reply by: %1$s ', $name ) . "\r\n";
            $notify_message .= 'Comment: ' . "\r\n" . $content . "\r\n\r\n";
            $notify_message .= 'You can reply to the comment here: ' . "\r\n";
            $notify_message .= $link . "#comments\r\n\r\n";
            $message_headers = "Content-Type: text/plain; charset=\"" . get_option('blog_charset') . "\"\n";
            wp_mail( $email, $subject, $notify_message, $message_headers );
        }
    } 
}

?>

Es funktioniert gut, zögern Sie nicht, es zu versuchen. Es gibt zwei Dinge, die ich hinzufügen möchte. Ich möchte den Namen und die E-Mail-Adresse der Nachricht anpassen. Daher möchte ich den Blog-Namen als Absendernamen und eine benutzerdefinierte E-Mail als Absender-E-Mail festlegen (z. B. [email protected]). Wie mache ich es?

1

Vermutlich müssen Sie den Header verwenden, um den Absender auszuführen. Standardmäßig lautet der Absender [email protected]

$headers = 'From: My Name <[email protected]>' . "\r\n";

...

wp_mail( $email, $headers, $subject, $notify_message, $message_headers );

Bearbeitet ... Quelle: http://codex.wordpress.org/Function_Reference/wp_mail

0
jose pacheco