﻿id,summary,reporter,owner,description,type,status,priority,milestone,component,version,severity,resolution,keywords,cc
17001,wp_notify_postauthor From: problem,dglingren,,"My application uses the ""Email me whenever anyone posts a comment"" feature in the Discussion Settings sub panel. I have found an issue with the default WordPress implementation of this feature.

WordPress puts an invalid e-mail address in the ""From:"" header of all messages. In wp-includes/pluggable.php, function wp_notify_postauthor, line 1072 reads:

{{{
$wp_email = 'wordpress@' . preg_replace('#^www\.#', '', strtolower($_SERVER['SERVER_NAME']));
}}}

This means that the ""From"" field on all comment notification e-mails will contain an invalid domain name, which causes some SMTP servers to reject the transmission. A fix is to use the comment author's e-mail address when it is available:

{{{
if ( '' != $comment->comment_author_email )
  $wp_email = $comment->comment_author_email;
else
  $wp_email = 'wordpress@' . preg_replace('#^www\.#', '', strtolower($_SERVER['SERVER_NAME']));
}}}

There are some old (2005) tickets on this issue (e.g., #2053, #1593, #1532), and Changeset 3214 comes close. However, the fix proposed here brings the ""From:"" address into line with the ""Reply-To:"" address and is a better fix when the comment_author_email is set.",defect (bug),closed,normal,,Mail,3.1,normal,wontfix,,
