wpseek.com
A WordPress-centric search engine for devs and theme authors
wp_apply_typography_support is private and should not be used in themes or plugins directly.
wp_apply_typography_support › WordPress Function
Sincen/a
Deprecatedn/a
› wp_apply_typography_support ( $block_type, $block_attributes )
Access: |
|
Parameters: (2) |
|
Returns: |
|
Defined at: | |
Codex: |
Add CSS classes and inline styles for font sizes to the incoming attributes array.
This will be applied to the block markup in the front-end.Source
function wp_apply_typography_support( $block_type, $block_attributes ) { $has_font_size_support = false; $classes = array(); $styles = array(); if ( property_exists( $block_type, 'supports' ) ) { $has_font_size_support = _wp_array_get( $block_type->supports, array( 'fontSize' ), false ); } $has_line_height_support = false; if ( property_exists( $block_type, 'supports' ) ) { $has_line_height_support = _wp_array_get( $block_type->supports, array( 'lineHeight' ), false ); } // Font Size. if ( $has_font_size_support ) { $has_named_font_size = array_key_exists( 'fontSize', $block_attributes ); $has_custom_font_size = isset( $block_attributes['style']['typography']['fontSize'] ); // Apply required class or style. if ( $has_named_font_size ) { $classes[] = sprintf( 'has-%s-font-size', $block_attributes['fontSize'] ); } elseif ( $has_custom_font_size ) { $styles[] = sprintf( 'font-size: %spx;', $block_attributes['style']['typography']['fontSize'] ); } } // Line Height. if ( $has_line_height_support ) { $has_line_height = isset( $block_attributes['style']['typography']['lineHeight'] ); // Add the style (no classes for line-height). if ( $has_line_height ) { $styles[] = sprintf( 'line-height: %s;', $block_attributes['style']['typography']['lineHeight'] ); } } $attributes = array(); if ( ! empty( $classes ) ) { $attributes['class'] = implode( ' ', $classes ); } if ( ! empty( $styles ) ) { $attributes['style'] = implode( ' ', $styles ); } return $attributes; }