render_block_core_comment_template

The timeline below displays how wordpress function render_block_core_comment_template has changed across different WordPress versions. If a version is not listed, refer to the next available version below.

WordPress Version: 6.1

/**
 * Renders the `core/comment-template` block on the server.
 *
 * @param array    $attributes Block attributes.
 * @param string   $content    Block default content.
 * @param WP_Block $block      Block instance.
 *
 * @return string Returns the HTML representing the comments using the layout
 * defined by the block's inner blocks.
 */
function render_block_core_comment_template($attributes, $content, $block)
{
    // Bail out early if the post ID is not set for some reason.
    if (empty($block->context['postId'])) {
        return '';
    }
    if (post_password_required($block->context['postId'])) {
        return;
    }
    $comment_query = new WP_Comment_Query(build_comment_query_vars_from_block($block));
    // Get an array of comments for the current post.
    $comments = $comment_query->get_comments();
    if (count($comments) === 0) {
        return '';
    }
    $comment_order = get_option('comment_order');
    if ('desc' === $comment_order) {
        $comments = array_reverse($comments);
    }
    $wrapper_attributes = get_block_wrapper_attributes();
    return sprintf('<ol %1$s>%2$s</ol>', $wrapper_attributes, block_core_comment_template_render_comments($comments, $block));
}