WordPress Version: 6.1
/**
* Filters and sanitizes a parsed block to remove non-allowable HTML
* from block attribute values.
*
* @since 5.3.1
*
* @param WP_Block_Parser_Block $block The parsed block object.
* @param array[]|string $allowed_html An array of allowed HTML elements and attributes,
* or a context name such as 'post'. See wp_kses_allowed_html()
* for the list of accepted context names.
* @param string[] $allowed_protocols Optional. Array of allowed URL protocols.
* Defaults to the result of wp_allowed_protocols().
* @return array The filtered and sanitized block object result.
*/
function filter_block_kses($block, $allowed_html, $allowed_protocols = array())
{
$block['attrs'] = filter_block_kses_value($block['attrs'], $allowed_html, $allowed_protocols);
if (is_array($block['innerBlocks'])) {
foreach ($block['innerBlocks'] as $i => $inner_block) {
$block['innerBlocks'][$i] = filter_block_kses($inner_block, $allowed_html, $allowed_protocols);
}
}
return $block;
}