WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru
функция не описана

Pelago\Emogrifier

CssInliner::generateStyleStringFromDeclarationsArrays() private WC 1.0

This method merges old or existing name/value array with new name/value array and then generates a string of the combined style suitable for placing inline. This becomes the single point for CSS string generation allowing for consistent CSS output no matter where the CSS originally came from.

Это метод класса: CssInliner{}

Хуков нет.

Возвращает

Строку.

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

// private - только в коде основоного (родительского) класса
$result = $this->generateStyleStringFromDeclarationsArrays( $oldStyles, $newStyles );
$oldStyles(массив) (обязательный)
$newStyles(массив) (обязательный)

Код CssInliner::generateStyleStringFromDeclarationsArrays() WC 4.5.2

woocommerce/vendor/pelago/emogrifier/src/Emogrifier/CssInliner.php
<?php
private function generateStyleStringFromDeclarationsArrays(array $oldStyles, array $newStyles)
{
    $cacheKey = \serialize([$oldStyles, $newStyles]);
    if (isset($this->caches[self::CACHE_KEY_COMBINED_STYLES][$cacheKey])) {
        return $this->caches[self::CACHE_KEY_COMBINED_STYLES][$cacheKey];
    }

    // Unset the overridden styles to preserve order, important if shorthand and individual properties are mixed
    foreach ($oldStyles as $attributeName => $attributeValue) {
        if (!isset($newStyles[$attributeName])) {
            continue;
        }

        $newAttributeValue = $newStyles[$attributeName];
        if (
            $this->attributeValueIsImportant($attributeValue)
            && !$this->attributeValueIsImportant($newAttributeValue)
        ) {
            unset($newStyles[$attributeName]);
        } else {
            unset($oldStyles[$attributeName]);
        }
    }

    $combinedStyles = \array_merge($oldStyles, $newStyles);

    $style = '';
    foreach ($combinedStyles as $attributeName => $attributeValue) {
        $style .= \strtolower(\trim($attributeName)) . ': ' . \trim($attributeValue) . '; ';
    }
    $trimmedStyle = \rtrim($style);

    $this->caches[self::CACHE_KEY_COMBINED_STYLES][$cacheKey] = $trimmedStyle;

    return $trimmedStyle;
}