Automattic\WooCommerce\Internal\RestApi\Routes\V4\Settings\Emails\Schema

EmailsSettingsSchema::wrap_woocommerce_tagsprivateWC 1.0

Wrap personalization tags in HTML comments for the email editor. This is required for the email editor personalization. Use negative lookbehind and lookahead to avoid double-wrapping already wrapped tags.

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

Хуков нет.

Возвращает

Разное. The wrapped value.

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

// private - только в коде основоного (родительского) класса
$result = $this->wrap_woocommerce_tags( $value );
$value(разное) (обязательный)
The value to wrap.

Код EmailsSettingsSchema::wrap_woocommerce_tags() WC 10.5.2

private function wrap_woocommerce_tags( $value ) {
	if ( ! is_string( $value ) ) {
		return $value;
	}

	$prefixes = $this->get_personalization_tag_prefixes();

	if ( empty( $prefixes ) ) {
		return $value;
	}

	// Escape prefixes for use in regex and join with |.
	$escaped_prefixes = array_map( 'preg_quote', $prefixes );
	$prefixes_pattern = implode( '|', $escaped_prefixes );

	// Wrap tags that aren't already wrapped.
	return preg_replace( '/(?<!<!--)(\[(?:' . $prefixes_pattern . ')\/[^\]]+\])(?!-->)/i', '<!--$1-->', $value );
}