Automattic\WooCommerce\EmailEditor\Engine\Renderer\ContentRenderer\Preprocessors
Typography_Preprocessor::preprocess_parent
Preprocess parent block
Метод класса: Typography_Preprocessor{}
Хуков нет.
Возвращает
Массив.
Использование
// private - только в коде основоного (родительского) класса $result = $this->preprocess_parent( $block ): array;
- $block(массив) (обязательный)
- Block to preprocess.
Код Typography_Preprocessor::preprocess_parent() Typography Preprocessor::preprocess parent WC 10.4.3
private function preprocess_parent( array $block ): array {
// Build styles that should be copied to children.
$email_attrs = array();
if ( isset( $block['attrs']['style']['color']['text'] ) ) {
$email_attrs['color'] = $block['attrs']['style']['color']['text'];
}
if ( isset( $block['attrs']['textColor'] ) && is_string( $block['attrs']['textColor'] ) && ! isset( $email_attrs['color'] ) ) {
$email_attrs['color'] = $this->settings_controller->translate_slug_to_color( $block['attrs']['textColor'] );
}
// In case the fontSize is set via a slug (small, medium, large, etc.) we translate it to a number
// The font size slug is set in $block['attrs']['fontSize'] and value in $block['attrs']['style']['typography']['fontSize'].
if ( isset( $block['attrs']['fontSize'] ) && is_string( $block['attrs']['fontSize'] ) ) {
$block['attrs']['style']['typography']['fontSize'] = $this->settings_controller->translate_slug_to_font_size( $block['attrs']['fontSize'] );
}
// Pass font size to email_attrs.
if ( isset( $block['attrs']['style']['typography']['fontSize'] ) ) {
$email_attrs['font-size'] = $block['attrs']['style']['typography']['fontSize'];
}
if ( isset( $block['attrs']['style']['typography']['textDecoration'] ) ) {
$email_attrs['text-decoration'] = $block['attrs']['style']['typography']['textDecoration'];
}
$block['email_attrs'] = array_merge( $email_attrs, $block['email_attrs'] ?? array() );
return $block;
}