wpseek.com
A WordPress-centric search engine for devs and theme authors



block_core_gallery_data_id_backcompatibility › WordPress Function

Since5.9.0
Deprecatedn/a
block_core_gallery_data_id_backcompatibility ( $parsed_block )
Parameters:
  • (array) $parsed_block The block being rendered.
    Required: Yes
Returns:
  • (array) The migrated block object.
Defined at:
Codex:

Handles backwards compatibility for Gallery Blocks, whose images feature a `data-id` attribute.

Now that the Gallery Block contains inner Image Blocks, we add a custom data-id attribute before rendering the gallery so that the Image Block can pick it up in its render_callback.


Source

function block_core_gallery_data_id_backcompatibility( $parsed_block ) {
	if ( 'core/gallery' === $parsed_block['blockName'] ) {
		foreach ( $parsed_block['innerBlocks'] as $key => $inner_block ) {
			if ( 'core/image' === $inner_block['blockName'] ) {
				if ( ! isset( $parsed_block['innerBlocks'][ $key ]['attrs']['data-id'] ) && isset( $inner_block['attrs']['id'] ) ) {
					$parsed_block['innerBlocks'][ $key ]['attrs']['data-id'] = esc_attr( $inner_block['attrs']['id'] );
				}
			}
		}
	}

	return $parsed_block;
}