'#c9493b', 'secondary_color' => '#e36355', 'tertiary_color' => '#b03022', 'accent_color' => '#078896', 'highlight_color' => '#5bb021', 'light_gray_color' => '#e4e4e4', 'gray_color' => '#848484', 'dark_gray_color' => '#242424', ) ); // Add theme support for block color palette. add_theme_support( 'editor-color-palette', apply_filters( 'harrison_editor_color_palette_args', array( array( 'name' => esc_html_x( 'Primary', 'block color', 'harrison' ), 'slug' => 'primary', 'color' => esc_html( $color_palette['primary_color'] ), ), array( 'name' => esc_html_x( 'Secondary', 'block color', 'harrison' ), 'slug' => 'secondary', 'color' => esc_html( $color_palette['secondary_color'] ), ), array( 'name' => esc_html_x( 'Tertiary', 'block color', 'harrison' ), 'slug' => 'tertiary', 'color' => esc_html( $color_palette['tertiary_color'] ), ), array( 'name' => esc_html_x( 'Accent', 'block color', 'harrison' ), 'slug' => 'accent', 'color' => esc_html( $color_palette['accent_color'] ), ), array( 'name' => esc_html_x( 'Highlight', 'block color', 'harrison' ), 'slug' => 'highlight', 'color' => esc_html( $color_palette['highlight_color'] ), ), array( 'name' => esc_html_x( 'White', 'block color', 'harrison' ), 'slug' => 'white', 'color' => '#ffffff', ), array( 'name' => esc_html_x( 'Light Gray', 'block color', 'harrison' ), 'slug' => 'light-gray', 'color' => esc_html( $color_palette['light_gray_color'] ), ), array( 'name' => esc_html_x( 'Gray', 'block color', 'harrison' ), 'slug' => 'gray', 'color' => esc_html( $color_palette['gray_color'] ), ), array( 'name' => esc_html_x( 'Dark Gray', 'block color', 'harrison' ), 'slug' => 'dark-gray', 'color' => esc_html( $color_palette['dark_gray_color'] ), ), array( 'name' => esc_html_x( 'Black', 'block color', 'harrison' ), 'slug' => 'black', 'color' => '#000000', ), ) ) ); // Add theme support for font sizes. add_theme_support( 'editor-font-sizes', apply_filters( 'harrison_editor_font_sizes_args', array( array( 'name' => esc_html_x( 'Small', 'block font size', 'harrison' ), 'size' => 16, 'slug' => 'small', ), array( 'name' => esc_html_x( 'Medium', 'block font size', 'harrison' ), 'size' => 24, 'slug' => 'medium', ), array( 'name' => esc_html_x( 'Large', 'block font size', 'harrison' ), 'size' => 36, 'slug' => 'large', ), array( 'name' => esc_html_x( 'Extra Large', 'block font size', 'harrison' ), 'size' => 48, 'slug' => 'extra-large', ), array( 'name' => esc_html_x( 'Huge', 'block font size', 'harrison' ), 'size' => 64, 'slug' => 'huge', ), ) ) ); // Check if block style functions are available. if ( function_exists( 'register_block_style' ) ) { // Register Widget Title Block style. register_block_style( 'core/heading', array( 'name' => 'widget-title', 'label' => esc_html__( 'Widget Title', 'harrison' ), 'style_handle' => 'harrison-stylesheet', ) ); } } add_action( 'after_setup_theme', 'harrison_gutenberg_support' ); /** * Enqueue block styles and scripts for Gutenberg Editor. */ function harrison_block_editor_assets() { // Get Theme Version. $theme_version = wp_get_theme()->get( 'Version' ); // Enqueue Editor Styling. wp_enqueue_style( 'harrison-editor-styles', get_theme_file_uri( '/assets/css/editor-styles.css' ), array(), $theme_version, 'all' ); // Get current screen. $current_screen = get_current_screen(); // Enqueue Page Template Switcher Editor plugin. if ( method_exists( $current_screen, 'is_block_editor' ) && $current_screen->is_block_editor() && 'post' === $current_screen->base ) { wp_enqueue_script( 'harrison-editor-theme-settings', get_theme_file_uri( '/assets/js/editor-theme-settings.js' ), array( 'wp-blocks', 'wp-element', 'wp-edit-post' ), $theme_version ); } } add_action( 'enqueue_block_editor_assets', 'harrison_block_editor_assets' ); /** * Add body classes in Gutenberg Editor. */ function harrison_block_editor_body_classes( $classes ) { global $post; $current_screen = get_current_screen(); // Return early if we are not in the Gutenberg Editor. if ( ! ( method_exists( $current_screen, 'is_block_editor' ) && $current_screen->is_block_editor() && 'post' === $current_screen->base ) ) { return $classes; } // Fullwidth Page Template? if ( 'templates/template-fullwidth.php' === get_page_template_slug( $post->ID ) ) { $classes .= ' tz-fullwidth-page-layout '; } // No Title Page Template? if ( 'templates/template-no-title.php' === get_page_template_slug( $post->ID ) ) { $classes .= ' tz-page-title-hidden '; } // Full-width / No Title Page Template? if ( 'templates/template-fullwidth-no-title.php' === get_page_template_slug( $post->ID ) ) { $classes .= ' tz-fullwidth-page-layout tz-page-title-hidden '; } return $classes; } add_filter( 'admin_body_class', 'harrison_block_editor_body_classes' );