Gets the styles resulting of merging core, theme, and user data.
Parameters
$patharrayoptional- Path to the specific style to retrieve. Optional.
If empty, will return all styles.Default:
array() $contextarrayoptional- Metadata to know where to retrieve the $path from. Optional.
block_namestringWhich block to retrieve the styles from.
If empty, it’ll return the styles for the global context.originstringWhich origin to take data from.
Valid values are'all'(core, theme, and user) or'base'(core and theme).
If empty or unknown,'all'is used.transformsarrayWhich transformation(s) to apply.
Valid value is array('resolve-variables').
If defined, variables are resolved to their value in the styles.
Default:
array()
Source
function wp_get_global_styles( $path = array(), $context = array() ) {
if ( ! empty( $context['block_name'] ) ) {
$path = array_merge( array( 'blocks', $context['block_name'] ), $path );
}
$origin = 'custom';
if ( isset( $context['origin'] ) && 'base' === $context['origin'] ) {
$origin = 'theme';
}
$resolve_variables = isset( $context['transforms'] )
&& is_array( $context['transforms'] )
&& in_array( 'resolve-variables', $context['transforms'], true );
$merged_data = WP_Theme_JSON_Resolver::get_merged_data( $origin );
if ( $resolve_variables ) {
$merged_data = WP_Theme_JSON::resolve_variables( $merged_data );
}
$styles = $merged_data->get_raw_data()['styles'];
return _wp_array_get( $styles, $path, $styles );
}
How to get the colors defined for ‘core/button’:
Returns: