get_comment_author( int|WP_Comment $comment_id ): string

Retrieves the author of the current comment.

Description

If the comment has an empty comment_author field, then ‘Anonymous’ person is assumed.

Parameters

$comment_idint|WP_Commentoptional
WP_Comment or the ID of the comment for which to retrieve the author.
Default current comment.

Return

string The comment author

Source

function get_comment_author( $comment_id = 0 ) {
	$comment = get_comment( $comment_id );

	if ( ! empty( $comment->comment_ID ) ) {
		$comment_id = $comment->comment_ID;
	} elseif ( is_scalar( $comment_id ) ) {
		$comment_id = (string) $comment_id;
	} else {
		$comment_id = '0';
	}

	if ( empty( $comment->comment_author ) ) {
		$user = ! empty( $comment->user_id ) ? get_userdata( $comment->user_id ) : false;
		if ( $user ) {
			$comment_author = $user->display_name;
		} else {
			$comment_author = __( 'Anonymous' );
		}
	} else {
		$comment_author = $comment->comment_author;
	}

	/**
	 * Filters the returned comment author name.
	 *
	 * @since 1.5.0
	 * @since 4.1.0 The `$comment_id` and `$comment` parameters were added.
	 *
	 * @param string     $comment_author The comment author's username.
	 * @param string     $comment_id     The comment ID as a numeric string.
	 * @param WP_Comment $comment        The comment object.
	 */
	return apply_filters( 'get_comment_author', $comment_author, $comment_id, $comment );
}

Hooks

apply_filters( ‘get_comment_author’, string $comment_author, string $comment_id, WP_Comment $comment )

Filters the returned comment author name.

Changelog

VersionDescription
4.4.0Added the ability for $comment_id to also accept a WP_Comment object.
1.5.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.