_block_template_render_without_post_block_context

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

WordPress Version: 5.8

/**
 * Removes post details from block context when rendering a block template.
 *
 * @access private
 * @since 5.8.0
 *
 * @param array $context Default context.
 *
 * @return array Filtered context.
 */
function _block_template_render_without_post_block_context($context)
{
    /*
     * When loading a template directly and not through a page that resolves it,
     * the top-level post ID and type context get set to that of the template.
     * Templates are just the structure of a site, and they should not be available
     * as post context because blocks like Post Content would recurse infinitely.
     */
    if (isset($context['postType']) && 'wp_template' === $context['postType']) {
        unset($context['postId']);
        unset($context['postType']);
    }
    return $context;
}