render_block_data` instead.' ) ); } $block_type = WP_Block_Type_Registry::get_instance()->get_registered( $parsed_block['blockName'] ); $element_block_styles = isset( $parsed_block['attrs']['style']['elements'] ) ? $parsed_block['attrs']['style']['elements'] : null; if ( ! $element_block_styles ) { return $parsed_block; } $skip_link_color_serialization = wp_should_skip_block_supports_serialization( $block_type, 'color', 'link' ); $skip_heading_color_serialization = wp_should_skip_block_supports_serialization( $block_type, 'color', 'heading' ); $skip_button_color_serialization = wp_should_skip_block_supports_serialization( $block_type, 'color', 'button' ); $skips_all_element_color_serialization = $skip_link_color_serialization && $skip_heading_color_serialization && $skip_button_color_serialization; if ( $skips_all_element_color_serialization ) { return $parsed_block; } $options = array( 'button' => array( 'skip' => $skip_button_color_serialization ), 'link' => array( 'skip' => $skip_link_color_serialization ), 'heading' => array( 'skip' => $skip_heading_color_serialization ), ); if ( ! wp_should_add_elements_class_name( $parsed_block, $options ) ) { return $parsed_block; } $class_name = wp_get_elements_class_name( $parsed_block ); $updated_class_name = isset( $parsed_block['attrs']['className'] ) ? $parsed_block['attrs']['className'] . " $class_name" : $class_name; _wp_array_set( $parsed_block, array( 'attrs', 'className' ), $updated_class_name ); // Generate element styles based on selector and store in style engine for enqueuing. $element_types = array( 'button' => array( 'selector' => ".$class_name .wp-element-button, .$class_name .wp-block-button__link", 'skip' => $skip_button_color_serialization, ), 'link' => array( 'selector' => ".$class_name a:where(:not(.wp-element-button))", 'hover_selector' => ".$class_name a:where(:not(.wp-element-button)):hover", 'skip' => $skip_link_color_serialization, ), 'heading' => array( 'selector' => ".$class_name h1, .$class_name h2, .$class_name h3, .$class_name h4, .$class_name h5, .$class_name h6", 'skip' => $skip_heading_color_serialization, 'elements' => array( 'h1', 'h2', 'h3', 'h4', 'h5', 'h6' ), ), ); foreach ( $element_types as $element_type => $element_config ) { if ( $element_config['skip'] ) { continue; } $element_style_object = isset( $element_block_styles[ $element_type ] ) ? $element_block_styles[ $element_type ] : null; // Process primary element type styles. if ( $element_style_object ) { wp_style_engine_get_styles( $element_style_object, array( 'selector' => $element_config['selector'], 'context' => 'block-supports', ) ); if ( isset( $element_style_object[':hover'] ) ) { wp_style_engine_get_styles( $element_style_object[':hover'], array( 'selector' => $element_config['hover_selector'], 'context' => 'block-supports', ) ); } } // Process related elements e.g. h1-h6 for headings. if ( isset( $element_config['elements'] ) ) { foreach ( $element_config['elements'] as $element ) { $element_style_object = isset( $element_block_styles[ $element ] ) ? $element_block_styles[ $element ] : null; if ( $element_style_object ) { wp_style_engine_get_styles( $element_style_object, array( 'selector' => ".$class_name $element", 'context' => 'block-supports', ) ); } } } } return $parsed_block; } /** * Ensure the elements block support class name generated, and added to * block attributes, in the `render_block_data` filter gets applied to the * block's markup. * * @see wp_render_elements_support_styles * @since 6.6.0 * * @param string $block_content Rendered block content. * @param array $block Block object. * @return string Filtered block content. */ function wp_render_elements_class_name( $block_content, $block ) { $class_string = $block['attrs']['className'] ?? ''; preg_match( '/\bwp-elements-\S+\b/', $class_string, $matches ); if ( empty( $matches ) ) { return $block_content; } $tags = new WP_HTML_Tag_Processor( $block_content ); if ( $tags->next_tag() ) { $tags->add_class( $matches[0] ); } return $tags->get_updated_html(); } add_filter( 'render_block', 'wp_render_elements_class_name', 10, 2 ); add_filter( 'render_block_data', 'wp_render_elements_support_styles', 10, 1 ); Hospodářské noviny: Titul Evy Decroix je pseudokauza. V zápalu svatého boje za morálku politiků míříme k vládě naprostých cyniků – Eva Decroix
22. června 2025

Hospodářské noviny: Titul Evy Decroix je pseudokauza. V zápalu svatého boje za morálku politiků míříme k vládě naprostých cyniků

(Hospodářské noviny) Až bude někdo potřebovat dětem na příkladu vysvětlit, co to je pseudokauza, může směle použít aktuální probírání magisterského titulu ministryně spravedlnosti Evy Decroix. Jde o úplnou koninu, kterou se ale opozice a část novinářstva pokouší nafouknout do pangalaktických rozměrů. Soudný člověk by ji vlastně měl v zájmu duševní hygieny ignorovat. Ale na druhou stranu nám případ umožňuje poukázat na dvě z věcí, které jsou v české společnosti jaksi nakřivo a které ji v důsledku brzdí.

Stručně, o co se věcně jedná. Nová ministryně Eva Decroix má od Univerzity Karlovy uznané magisterské vzdělání z Francie. Ministerstvo školství ovšem z nějakých důvodů k uznanému vzdělání ze zahraničí nepřiděluje automaticky titul. Těžko říci proč, možná proto, aby se dalo na vědomí, že ten, kdo studoval „venku“, je tak nějak méněcenný, že to prostě není vzdělanostní našinec. Což je samo o sobě velmi české.

Údajný problém Evy Decroix pak má spočívat v tom, že titul „Mgr.“ v některých dokumentech uváděla. A když se dozvěděla, že jí vlastně formálně nepatří, nepohlídala si, aby se už nikde neobjevoval. Je proto ostouzena a vyzývána k odstoupení, a to přesto, že má i doktorát, takže je to vlastně něco podobného, jako kdyby někdo chtěl vyřadit z reprezentace olympijského gymnastu kvůli tomu, že nemá potvrzení, že umí kotrmelec. 

Celý článek na: Titul Evy Decroix je pseudokauza. V zápalu svatého boje za morálku politiků míříme k vládě naprostých cyniků