wp_style_engine_get_styles()
Global public interface method to generate styles from a single style object, e.g. the value of a block's attributes.style object or the top level styles in theme.json.
Example usage:
$styles = wp_style_engine_get_styles( array( 'color' => array( 'text' => '#cccccc' ), ) );
Returns:
array( 'css' => 'color: #cccccc', 'declarations' => array( 'color' => '#cccccc' ), 'classnames' => 'has-color', )
Хуков нет.
Возвращает
Массив
.
Использование
wp_style_engine_get_styles( $block_styles, $options );
- $block_styles(массив) (обязательный)
- The style object.
- $options(массив)
An array of options.
По умолчанию: empty array
-
context(строка|null)
An identifier describing the origin of the style object, e.g. 'block-supports' or 'global-styles'. When set, the style engine will attempt to store the CSS rules, where a selector is also passed.
По умолчанию: null -
convert_vars_to_classnames(true|false)
Whether to skip converting incoming CSS var patterns, e.g. var:preset|<PRESET_TYPE>|<PRESET_SLUG>, to var( --wp--preset--* ) values.
По умолчанию: false - selector(строка)
Optional. When a selector is passed, the value of $css in the return value will comprise a full CSS rule $selector { ...$css_declarations }, otherwise, the value will be a concatenated string of CSS declarations.
-
Заметки
- Смотрите: https://developer.wordpress.org/block-editor/reference-guides/theme-json-reference/theme-json-living/#styles
- Смотрите: https://developer.wordpress.org/block-editor/reference-guides/block-api/block-supports/
Список изменений
С версии 6.1.0 | Введена. |
Код wp_style_engine_get_styles() wp style engine get styles WP 6.7.1
function wp_style_engine_get_styles( $block_styles, $options = array() ) { $options = wp_parse_args( $options, array( 'selector' => null, 'context' => null, 'convert_vars_to_classnames' => false, ) ); $parsed_styles = WP_Style_Engine::parse_block_styles( $block_styles, $options ); // Output. $styles_output = array(); if ( ! empty( $parsed_styles['declarations'] ) ) { $styles_output['css'] = WP_Style_Engine::compile_css( $parsed_styles['declarations'], $options['selector'] ); $styles_output['declarations'] = $parsed_styles['declarations']; if ( ! empty( $options['context'] ) ) { WP_Style_Engine::store_css_rule( $options['context'], $options['selector'], $parsed_styles['declarations'] ); } } if ( ! empty( $parsed_styles['classnames'] ) ) { $styles_output['classnames'] = implode( ' ', array_unique( $parsed_styles['classnames'] ) ); } return array_filter( $styles_output ); }