WP_Theme_JSON::get_block_style_variation_selectorprotected staticWP 6.5.0

Generates a selector for a block style variation.

Метод класса: WP_Theme_JSON{}

Хуков нет.

Возвращает

Строку. Block selector with block style variation selector added to it.

Использование

$result = WP_Theme_JSON::get_block_style_variation_selector( $variation_name, $block_selector );
$variation_name(строка) (обязательный)
Name of the block style variation.
$block_selector(строка) (обязательный)
CSS selector for the block.

Список изменений

С версии 6.5.0 Введена.

Код WP_Theme_JSON::get_block_style_variation_selector() WP 7.0

protected static function get_block_style_variation_selector( $variation_name, $block_selector ) {
	$variation_class = ".is-style-$variation_name";

	if ( ! $block_selector ) {
		return $variation_class;
	}

	$limit          = 1;
	$selector_parts = explode( ',', $block_selector );
	$result         = array();

	foreach ( $selector_parts as $part ) {
		$result[] = preg_replace_callback(
			'/((?::\([^)]+\))?\s*)([^\s:]+)/',
			function ( $matches ) use ( $variation_class ) {
				return $matches[1] . $matches[2] . $variation_class;
			},
			$part,
			$limit
		);
	}

	return implode( ',', $result );
}