get_block_core_post_featured_image_overlay_element_markup() – Generate markup for the HTML element that will be used for the overlay.

You appear to be a bot. Output may be restricted

Description

Generate markup for the HTML element that will be used for the overlay.

Usage

$string = get_block_core_post_featured_image_overlay_element_markup( $attributes );

Parameters

$attributes
( array ) required – Block attributes.

Returns

string HTML markup in string format.

Source

File name: wordpress/wp-includes/blocks/post-featured-image.php
Lines:

1 to 57 of 57
function get_block_core_post_featured_image_overlay_element_markup( $attributes ) {
  $has_dim_background  = isset( $attributes['dimRatio'] ) && $attributes['dimRatio'];
  $has_gradient        = isset( $attributes['gradient'] ) && $attributes['gradient'];
  $has_custom_gradient = isset( $attributes['customGradient'] ) && $attributes['customGradient'];
  $has_solid_overlay   = isset( $attributes['overlayColor'] ) && $attributes['overlayColor'];
  $has_custom_overlay  = isset( $attributes['customOverlayColor'] ) && $attributes['customOverlayColor'];
  $class_names         = array( 'wp-block-post-featured-image__overlay' );
  $styles              = array();

  if ( ! $has_dim_background ) {
    return '';
  }

  // Apply border classes and styles.
  $border_attributes = get_block_core_post_featured_image_border_attributes( $attributes );

  if ( ! empty( $border_attributes['class'] ) ) {
    $class_names[] = $border_attributes['class'];
  }

  if ( ! empty( $border_attributes['style'] ) ) {
    $styles[] = $border_attributes['style'];
  }

  // Apply overlay and gradient classes.
  if ( $has_dim_background ) {
    $class_names[] = 'has-background-dim';
    $class_names[] = "has-background-dim-{$attributes['dimRatio']}";
  }

  if ( $has_solid_overlay ) {
    $class_names[] = "has-{$attributes['overlayColor']}-background-color";
  }

  if ( $has_gradient || $has_custom_gradient ) {
    $class_names[] = 'has-background-gradient';
  }

  if ( $has_gradient ) {
    $class_names[] = "has-{$attributes['gradient']}-gradient-background";
  }

  // Apply background styles.
  if ( $has_custom_gradient ) {
    $styles[] = sprintf( 'background-image: %s;', $attributes['customGradient'] );
  }

  if ( $has_custom_overlay ) {
    $styles[] = sprintf( 'background-color: %s;', $attributes['customOverlayColor'] );
  }

  return sprintf(
    '<span class="%s" style="%s" aria-hidden="true"></span>',
    esc_attr( implode( ' ', $class_names ) ),
    esc_attr( safecss_filter_attr( implode( ' ', $styles ) ) )
  );
}
 

 View on GitHub View on Trac