функция since 6.1.0

wp_style_engine_get_stylesheet_from_css_rules()

Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.

Сигнатура

wp_style_engine_get_stylesheet_from_css_rules( array $css_rules, array $options = array() ): string

Описание

Полезно для получения скомпилированной таблицы стилей из любого набора «CSS-селектор + объявления».
Пример использования:
$css_rules = array(
array(
'selector' => '.elephant-are-cool',
'declarations' => array(
'color' => 'gray',
'width' => '3em',
),
),
);

$css = wp_style_engine_get_stylesheet_from_css_rules( $css_rules );Возвращает:
.elephant-are-cool{color:gray;width:3em}

Оригинал (английский)

Useful for returning a compiled stylesheet from any collection of CSS selector + declarations.

Example usage:

$css_rules = array(
    array(
        'selector'     => '.elephant-are-cool',
        'declarations' => array(
            'color' => 'gray',
            'width' => '3em',
        ),
    ),
);

$css = wp_style_engine_get_stylesheet_from_css_rules( $css_rules );

Returns:

.elephant-are-cool{color:gray;width:3em}

Параметры

$css_rules array обязательный
Required. A collection of CSS rules. ...$0 array rules_group stringA parent CSS selector in the case of nested CSS, or a CSS nested @rule, such as @media (min-width: 80rem) or @layer module. selector stringA CSS selector. declarations string[]An associative array of CSS definitions, e.g. array( "$property" => "$value", "$property" => "$value" ). $optionsarrayoptionalAn array of options. context string|nullAn identifier describing the origin of the style object, e.g. 'block-supports' or 'global-styles'. Default 'block-supports'. When set, the style engine will attempt to store the CSS rules. optimize boolWhether to optimize the CSS output, e.g. combine rules. Default false. prettify boolWhether to add new lines and indents to output. Defaults to whether the SCRIPT_DEBUG constant is defined. Default:array() Return string A string of compiled CSS declarations, or empty string. Source function wp_style_engine_get_stylesheet_from_css_rules( $css_rules, $options = array() ) { if ( empty( $css_rules ) ) { return ''; } $options = wp_parse_args( $options, array( 'context' => null, ) ); $css_rule_objects = array(); foreach ( $css_rules as $css_rule ) { if ( empty( $css_rule['selector'] ) || empty( $css_rule['declarations'] ) || ! is_array( $css_rule['declarations'] ) ) { continue; } $rules_group = $css_rule['rules_group'] ?? null; if ( ! empty( $options['context'] ) ) { WP_Style_Engine::store_css_rule( $options['context'], $css_rule['selector'], $css_rule['declarations'], $rules_group ); } $css_rule_objects[] = new WP_Style_Engine_CSS_Rule( $css_rule['selector'], $css_rule['declarations'], $rules_group ); } if ( empty( $css_rule_objects ) ) { return ''; } return WP_Style_Engine::compile_stylesheet_from_css_rules( $css_rule_objects, $options ); } View all references View on Trac View on GitHub Related UsesDescriptionWP_Style_Engine_CSS_Rule::__TOKEN_4__wp-includes/style-engine/class-wp-style-engine-css-rule.phpConstructor. WP_Style_Engine::__TOKEN_5__wp-includes/style-engine/class-wp-style-engine.phpReturns a compiled stylesheet from stored CSS rules. WP_Style_Engine::__TOKEN_6__wp-includes/style-engine/class-wp-style-engine.phpStores a CSS rule using the provided CSS selector and CSS declarations. wp_parse_args()wp-includes/functions.phpMerges user defined arguments into defaults array. Show 1 moreShow less Used byDescriptionWP_Duotone::__TOKEN_8__wp-includes/class-wp-duotone.phpAppends the used block duotone filter declarations to the inline block supports CSS. WP_Duotone::__TOKEN_9__wp-includes/class-wp-duotone.phpOutputs all necessary SVG for duotone filters, CSS for classic themes. Changelog VersionDescription6.6.0Added support for $rules_group in the $css_rules array.6.1.0Introduced.

Возвращаемое значение

string

Исходный код

wp-includes/style-engine.php:142

function wp_style_engine_get_stylesheet_from_css_rules( $css_rules, $options = array() ) {
	if ( empty( $css_rules ) ) {
		return '';
	}

	$options = wp_parse_args(
		$options,
		array(
			'context' => null,
		)
	);

	$css_rule_objects = array();
	foreach ( $css_rules as $css_rule ) {
		if ( empty( $css_rule['selector'] ) || empty( $css_rule['declarations'] ) || ! is_array( $css_rule['declarations'] ) ) {
			continue;
		}

		$rules_group = $css_rule['rules_group'] ?? null;
		if ( ! empty( $options['context'] ) ) {
			WP_Style_Engine::store_css_rule( $options['context'], $css_rule['selector'], $css_rule['declarations'], $rules_group );
		}

		$css_rule_objects[] = new WP_Style_Engine_CSS_Rule( $css_rule['selector'], $css_rule['declarations'], $rules_group );
	}

	if ( empty( $css_rule_objects ) ) {
		return '';
	}

	return WP_Style_Engine::compile_stylesheet_from_css_rules( $css_rule_objects, $options );
}

История изменений

ВерсияОписание
6.6.0 Added support for $rules_group in the $css_rules array.
6.1.0 Introduced.

Что будем искать? Например,Продвижение

Этот сайт использует куки-файлы. Оставаясь на сайте, Вы соглашаетесь на их использование. Для получения дополнительной информации, пожалуйста, ознакомьтесь с политикой в отношении персональных данных.