$attributes['commentsToShow'],
				'status'      => 'approve',
				'post_status' => 'publish',
			),
			array()
		)
	);
	$list_items_markup = '';
	if ( ! empty( $comments ) ) {
		// Prime the cache for associated posts. This is copied from \WP_Widget_Recent_Comments::widget().
		$post_ids = array_unique( wp_list_pluck( $comments, 'comment_post_ID' ) );
		_prime_post_caches( $post_ids, strpos( get_option( 'permalink_structure' ), '%category%' ), false );
		foreach ( $comments as $comment ) {
			$list_items_markup .= '
';
		}
	}
	$classnames = array();
	if ( $attributes['displayAvatar'] ) {
		$classnames[] = 'has-avatars';
	}
	if ( $attributes['displayDate'] ) {
		$classnames[] = 'has-dates';
	}
	if ( $attributes['displayExcerpt'] ) {
		$classnames[] = 'has-excerpts';
	}
	if ( empty( $comments ) ) {
		$classnames[] = 'no-comments';
	}
	$wrapper_attributes = get_block_wrapper_attributes( array( 'class' => implode( ' ', $classnames ) ) );
	return ! empty( $comments ) ? sprintf(
		'%2$s
',
		$wrapper_attributes,
		$list_items_markup
	) : sprintf(
		'%2$s
',
		$wrapper_attributes,
		__( 'No comments to show.' )
	);
}
/**
 * Registers the `core/latest-comments` block.
 */
function register_block_core_latest_comments() {
	register_block_type_from_metadata(
		__DIR__ . '/latest-comments',
		array(
			'render_callback' => 'render_block_core_latest_comments',
		)
	);
}
add_action( 'init', 'register_block_core_latest_comments' );