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

You appear to be a bot. Output may be restricted

Description

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.

Usage

$array = block_core_gallery_data_id_backcompatibility( $parsed_block );

Parameters

$parsed_block
( array ) required – The block being rendered.

Returns

array The migrated block object.

Source

File name: wordpress/wp-includes/blocks/gallery.php
Lines:

1 to 13 of 13
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;
}
 

 View on GitHub View on Trac