WP_Theme_JSON::process_pseudo_selectorsprivate staticWP 1.0

Processes pseudo-selectors for any node (block or variation).

Method of the class: WP_Theme_JSON{}

No Hooks.

Returns

Array. Array of pseudo-selector declarations.

Usage

$result = WP_Theme_JSON::process_pseudo_selectors( $node, $base_selector, $settings, $block_name );
$node(array) (required)
The node data (block or variation).
$base_selector(string) (required)
The base selector.
$settings(array) (required)
The theme settings.
$block_name(string) (required)
The block name.

WP_Theme_JSON::process_pseudo_selectors() code WP 7.0

private static function process_pseudo_selectors( $node, $base_selector, $settings, $block_name ) {
	$pseudo_declarations = array();

	if ( ! isset( static::VALID_BLOCK_PSEUDO_SELECTORS[ $block_name ] ) ) {
		return $pseudo_declarations;
	}

	foreach ( static::VALID_BLOCK_PSEUDO_SELECTORS[ $block_name ] as $pseudo_selector ) {
		if ( isset( $node[ $pseudo_selector ] ) ) {
			$combined_selector                         = static::append_to_selector( $base_selector, $pseudo_selector );
			$declarations                              = static::compute_style_properties( $node[ $pseudo_selector ], $settings, null, null );
			$pseudo_declarations[ $combined_selector ] = $declarations;
		}
	}

	return $pseudo_declarations;
}