WordPress Version: 6.3
/**
* Comment template functions
*
* These functions are meant to live inside of the WordPress loop.
*
* @package WordPress
* @subpackage Template
*/
/**
* Retrieves the author of the current comment.
*
* If the comment has an empty comment_author field, then 'Anonymous' person is
* assumed.
*
* @since 1.5.0
* @since 4.4.0 Added the ability for `$comment_id` to also accept a WP_Comment object.
*
* @param int|WP_Comment $comment_id Optional. WP_Comment or the ID of the comment for which to retrieve the author.
* Default current comment.
* @return string The comment author
*/
function get_comment_author($comment_id = 0)
{
$comment = get_comment($comment_id);
$comment_id = (!empty($comment->comment_ID)) ? $comment->comment_ID : $comment_id;
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);
}