'section', 'id' => self::SECTION_ID, 'title' => __( 'Button Settings', 'brandy' ), 'panel' => GeneralPanel::PANEL_ID, 'type' => 'brandy-section', 'description_hidden' => true, ); $configurations[] = array( 'configuration_type' => 'control', 'id' => self::SECTION_ID, 'label' => __( 'Button Settings', 'brandy' ), 'section' => self::SECTION_ID, 'type' => 'brandy_settings', 'input_attrs' => array( 'value' => '', 'style' => 'display:none;', ), 'partial' => false, 'default' => self::default_settings(), 'transport' => 'postMessage', ); return $configurations; } public static function default_settings() { return array( 'type' => 'default', 'color' => 'var(--wp--preset--color--brandy-foreground)', 'hoverColor' => 'var(--wp--preset--color--brandy-foreground)', 'textColor' => 'var(--wp--preset--color--white)', 'textHoverColor' => 'var(--wp--preset--color--white)', ); } public function print_global_css() { if ( ! is_customize_preview() ) { return; } $global_styles = wp_get_global_styles(); $color = $global_styles['elements']['button']['color']['background']; $hoverColor = $global_styles['elements']['button'][':hover']['color']['background']; $textColor = $global_styles['elements']['button']['color']['text']; $textHoverColor = $global_styles['elements']['button'][':hover']['color']['text']; $button_settings = ButtonService::get_settings(); $button_variables = array(); if ( isset( $button_settings['primaryColor'] ) ) { $button_variables[] = "--button-primary: {$button_settings['primaryColor']};"; } if ( isset( $button_settings['primaryHoverColor'] ) ) { $button_variables[] = "--button-primary-hover: {$button_settings['primaryHoverColor']};"; } if ( isset( $button_settings['primaryTextColor'] ) ) { $button_variables[] = "--button-primary-text: {$button_settings['primaryTextColor']};"; } if ( isset( $button_settings['primaryTextHoverColor'] ) ) { $button_variables[] = "--button-primary-text-hover: {$button_settings['primaryTextHoverColor']};"; } if ( ! empty( $button_variables ) ) { echo ' body { ' . implode( '', $button_variables ) . '} '; } echo " body.custom-button-style .wp-block-button:not(.is-style-outline) .wp-element-button { background-color: var(--button-primary, $color); color: var(--button-primary-text, $textColor); } body.custom-button-style .wp-block-button:not(.is-style-outline) .wp-element-button:hover { background-color: var(--button-primary-hover, $hoverColor); color: var(--button-primary-text-hover, $textHoverColor); } "; /** * Hide outline button styles */ // "body.custom-button-style .wp-block-button.is-style-outline .wp-element-button { // background-color: #ffffff00; // border-color: var(--button-primary, $color); // color: var(--button-primary, $color); // } // body.custom-button-style .wp-block-button.is-style-outline .wp-element-button:hover { // background-color: var(--button-primary, $color); // border-color: var(--button-primary, $color); // color: var(--button-primary-text, $textColor); // }" } }