get_block_core_post_featured_image_overlay_element_markup()
Generate markup for the HTML element that will be used for the overlay.
No Hooks.
Returns
String. HTML markup in string format.
Usage
get_block_core_post_featured_image_overlay_element_markup( $attributes );
- $attributes(array) (required)
- Block attributes.
Changelog
| Since 6.1.0 | Introduced. |
get_block_core_post_featured_image_overlay_element_markup() get block core post featured image overlay element markup code WP 6.9.1
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 ) ) )
);
}