Converts each styles section into a list of rulesets to be appended to the stylesheet.
Description
These rulesets contain all the css variables (custom variables and preset variables).
See glossary at https://developer.mozilla.org/en-US/docs/Web/CSS/Syntax
For each section this creates a new ruleset such as:
block-selector {
--wp--preset--category--slug: value;
--wp--custom--variable: value;
}Parameters
$nodesarrayrequired- Nodes with settings.
$originsstring[]required- List of origins to process.
Source
protected function get_css_variables( $nodes, $origins ) {
$stylesheet = '';
foreach ( $nodes as $metadata ) {
if ( null === $metadata['selector'] ) {
continue;
}
$selector = $metadata['selector'];
$node = _wp_array_get( $this->theme_json, $metadata['path'], array() );
$declarations = static::compute_preset_vars( $node, $origins );
$theme_vars_declarations = static::compute_theme_vars( $node );
foreach ( $theme_vars_declarations as $theme_vars_declaration ) {
$declarations[] = $theme_vars_declaration;
}
$stylesheet .= static::to_ruleset( $selector, $declarations );
}
return $stylesheet;
}
User Contributed Notes
You must log in before being able to contribute a note or feedback.