wpseek.com
Eine auf WordPress spezialiserte Suchmaschine für Entwickler und Theme-Autoren
wp_new_comment_notify_postauthor › WordPress Function
Seit4.4.0
Veraltetn/v
› wp_new_comment_notify_postauthor ( $comment_id )
| Parameter: |
|
| Gibt zurück: |
|
| Definiert in: |
|
| Codex: | |
| Changelog: |
|
Sends a notification of a new comment to the post author.
Uses the {@see 'notify_post_author'} filter to determine whether the post author should be notified when a new comment is added, overriding site setting.Quellcode
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 );
}