Sends a notification of a new comment to the post author.
Description
Uses the ‘notify_post_author’ filter to determine whether the post author should be notified when a new comment is added, overriding site setting.
Parameters
$comment_idintrequired- Comment ID.
Source
function wp_new_comment_notify_postauthor( $comment_id ) {
$comment = get_comment( $comment_id );
if ( ! ( $comment instanceof WP_Comment ) ) {
return false;
}
$comment_id = (int) $comment->comment_ID;
$is_note = ( 'note' === $comment->comment_type );
/*
* Determine the default notification behavior. Notes are eligible regardless
* of approval status, based on the 'wp_notes_notify' option. Other comments
* are only eligible once approved, based on the 'comments_notify' option.
*/
if ( $is_note ) {
$maybe_notify = (bool) get_option( 'wp_notes_notify', 1 );
} elseif ( '1' !== $comment->comment_approved ) {
$maybe_notify = false;
} else {
$maybe_notify = (bool) get_option( 'comments_notify' );
}
/**
* Filters whether to send the post author new comment and note notification emails,
* overriding the site settings and defaults. By default, notifications are sent for
* all notes and for approved comments.
*
* @since 4.4.0
* @since 7.1.0 Comment approval status is checked before this filter,
* and the filter no longer fires for invalid comment IDs.
*
* @param bool $maybe_notify Whether to notify the post author about the new comment.
* @param int $comment_id The ID of the comment for the notification.
*/
$maybe_notify = apply_filters( 'notify_post_author', $maybe_notify, $comment_id );
/*
* wp_notify_postauthor() checks if notifying the author of their own comment.
* By default, it won't, but filters can override this.
*/
if ( ! $maybe_notify ) {
return false;
}
return wp_notify_postauthor( $comment_id );
}
Hooks
- apply_filters( ‘notify_post_author’,
bool $maybe_notify ,int $comment_id ) Filters whether to send the post author new comment and note notification emails, overriding the site settings and defaults. By default, notifications are sent for all notes and for approved comments.
Changelog
| Version | Description |
|---|---|
| 7.1.0 | The comment approval status is now checked before the ‘notify_post_author’ filter, and invalid comment IDs return false without firing the filter. |
| 4.4.0 | Introduced. |
User Contributed Notes
You must log in before being able to contribute a note or feedback.