wp-includes/blocks/search.php:340Builds an array of inline styles for the search block.
$attributesarrayarrayfunction styles_for_block_core_search( $attributes ) { $wrapper_styles = array(); $button_styles = array(); $input_styles = array(); $label_styles = array(); $is_button_inside = ! empty( $attributes['buttonPosition'] ) && 'button-inside' === $attributes['buttonPosition']; $show_label = ( isset( $attributes['showLabel'] ) ) && false !== $attributes['showLabel']; // Add width styles. $has_width = ! empty( $attributes['width'] ) && ! empty( $attributes['widthUnit'] ); if ( $has_width ) { $wrapper_styles[] = sprintf( 'width: %d%s;', esc_attr( $attributes['width'] ), esc_attr( $attributes['widthUnit'] ) ); } // Add border width and color styles. apply_block_core_search_border_styles( $attributes, 'width', $wrapper_styles, $button_styles, $input_styles ); apply_block_core_search_border_styles( $attributes, 'color', $wrapper_styles, $button_styles, $input_styles ); apply_block_core_search_border_styles( $attributes, 'style', $wrapper_styles, $button_styles, $input_styles ); // Add border radius styles. $has_border_radius = ! empty( $attributes['style']['border']['radius'] ); if ( $has_border_radius ) { $default_padding = '4px'; $border_radius = $attributes['style']['border']['radius']; if ( is_array( $border_radius ) ) { // Apply styles for individual corner border radii. foreach ( $border_radius as $key => $value ) { // Get border-radius CSS variable from preset value if provided. if ( is_string( $value ) && str_contains( $value, 'var:preset|border-radius|' ) ) { $index_to_splice = strrpos( $value, '|' ) + 1; $slug = _wp_to_kebab_case( substr( $value, $index_to_splice ) ); $value = "var(--wp--preset--border-radius--$slug)"; } if ( null !== $value ) { // Convert camelCase key to kebab-case. $name = strtolower( preg_replace( '/(?<!^)[A-Z]/', '-$0', $key ) ); // Add shared styles for individual border radii for input & button. $border_style = sprintf( 'border-%s-radius: %s;', esc_attr( $name ), esc_attr( $value ) ); $input_styles[] = $border_style; $button_styles[] = $border_style; // Add adjusted border radius styles for the wrapper element // if button is positioned inside. if ( $is_button_inside && ( intval( $value ) !== 0 || str_contains( $value, 'var(--wp--preset--border-radius--' ) ) ) { $wrapper_styles[] = sprintf( 'border-%s-radius: calc(%s + %s);', esc_attr( $name ), esc_attr( $value ), $default_padding ); } } } } else { // Numeric check is for backwards compatibility purposes. $border_radius = is_numeric( $border_radius ) ? $border_radius . 'px' : $border_radius; // Get border-radius CSS variable from preset value if provided. if ( is_string( $border_radius ) && str_contains( $border_radius, 'var:preset|border-radius|' ) ) { $index_to_splice = strrpos( $border_radius, '|' ) + 1; $slug = _wp_to_kebab_case( substr( $border_radius, $index_to_splice ) ); $border_radius = "var(--wp--preset--border-radius--$slug)"; } $border_style = sprintf( 'border-radius: %s;', esc_attr( $border_radius ) ); $input_styles[] = $border_style; $button_styles[] = $border_style;Introduced in 5.8.0. Unchanged from 6.7.7 through 7.1.0.
Signature, return type and hooks compared across 5 parsed releases.
src/wp-includes/blocks/search.php, and regenerated for each WordPress release so it tracks the code rather than a snapshot of it.