wpseek.com
A WordPress-centric search engine for devs and theme authors
_flatten_blocks is private and should not be used in themes or plugins directly.
_flatten_blocks › WordPress Function
Since5.9.0
Deprecatedn/a
› _flatten_blocks ( $blocks )
| Access: |
|
| Parameters: |
|
| Returns: |
|
| Defined at: |
|
| Codex: |
Returns an array containing the references of the passed blocks and their inner blocks.
Related Functions: resolve_pattern_blocks, filter_block_kses, parse_blocks, has_blocks, _fix_attachment_links
Source
function _flatten_blocks( &$blocks ) {
$all_blocks = array();
$queue = array();
foreach ( $blocks as &$block ) {
$queue[] = &$block;
}
while ( count( $queue ) > 0 ) {
$block = &$queue[0];
array_shift( $queue );
$all_blocks[] = &$block;
if ( ! empty( $block['innerBlocks'] ) ) {
foreach ( $block['innerBlocks'] as &$inner_block ) {
$queue[] = &$inner_block;
}
}
}
return $all_blocks;
}