add_section( 'appointment_management_page_title_options', array( 'panel' => 'appointment_management_theme_options', 'title' => esc_html__( 'Page Title', 'appointment-management' ), ) ); $wp_customize->add_setting( 'appointment_management_page_header_visibility', array( 'default' => 'all-devices', 'sanitize_callback' => 'appointment_management_sanitize_select', ) ); $wp_customize->add_control( new WP_Customize_Control( $wp_customize, 'appointment_management_page_header_visibility', array( 'label' => esc_html__( 'Page Header Visibility', 'appointment-management' ), 'type' => 'select', 'section' => 'appointment_management_page_title_options', 'settings' => 'appointment_management_page_header_visibility', 'priority' => 10, 'choices' => array( 'all-devices' => esc_html__( 'Show on all devices', 'appointment-management' ), 'hide-tablet' => esc_html__( 'Hide on Tablet', 'appointment-management' ), 'hide-mobile' => esc_html__( 'Hide on Mobile', 'appointment-management' ), 'hide-tablet-mobile' => esc_html__( 'Hide on Tablet & Mobile', 'appointment-management' ), 'hide-all-devices' => esc_html__( 'Hide on all devices', 'appointment-management' ), ), ) ) ); $wp_customize->add_setting( 'appointment_management_page_title_background_separator', array( 'sanitize_callback' => 'sanitize_text_field', ) ); $wp_customize->add_control( new Appointment_Management_Separator_Custom_Control( $wp_customize, 'appointment_management_page_title_background_separator', array( 'label' => __( 'Page Title BG Image & Color Setting', 'appointment-management' ), 'section' => 'appointment_management_page_title_options', 'settings' => 'appointment_management_page_title_background_separator', ))); $wp_customize->add_setting( 'appointment_management_page_header_style', array( 'sanitize_callback' => 'appointment_management_sanitize_switch', 'default' => False, ) ); $wp_customize->add_control( new Appointment_Management_Toggle_Switch_Custom_Control( $wp_customize, 'appointment_management_page_header_style', array( 'label' => esc_html__('Page Title Background Image', 'appointment-management'), 'section' => 'appointment_management_page_title_options', ) ) ); $wp_customize->add_setting( 'appointment_management_page_header_background_image', array( 'default' => '', 'sanitize_callback' => 'esc_url_raw', ) ); $wp_customize->add_control( new WP_Customize_Image_Control( $wp_customize, 'appointment_management_page_header_background_image', array( 'label' => __( 'Background Image', 'appointment-management' ), 'section' => 'appointment_management_page_title_options', 'description' => __('Choose either a background image or a color. If a background image is selected, the background color will not be visible.', 'appointment-management'), 'settings' => 'appointment_management_page_header_background_image', 'active_callback' => 'appointment_management_is_pagetitle_bcakground_image_enabled', ))); $wp_customize->add_setting('appointment_management_page_header_image_height', array( 'default' => 200, 'sanitize_callback' => 'appointment_management_sanitize_range_value', )); $wp_customize->add_control(new Appointment_Management_Customize_Range_Control($wp_customize, 'appointment_management_page_header_image_height', array( 'label' => __('Image Height', 'appointment-management'), 'section' => 'appointment_management_page_title_options', 'settings' => 'appointment_management_page_header_image_height', 'active_callback' => 'appointment_management_is_pagetitle_bcakground_image_enabled', 'input_attrs' => array( 'min' => 0, 'max' => 1000, 'step' => 5, ), ))); $wp_customize->add_setting('appointment_management_page_title_background_color_setting', array( 'default' => '#f5f5f5', 'sanitize_callback' => 'sanitize_hex_color', )); $wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, 'appointment_management_page_title_background_color_setting', array( 'label' => __('Page Title Background Color', 'appointment-management'), 'section' => 'appointment_management_page_title_options', ))); $wp_customize->add_setting('appointment_management_pagetitle_height', array( 'default' => 50, 'sanitize_callback' => 'appointment_management_sanitize_range_value', )); $wp_customize->add_control(new Appointment_Management_Customize_Range_Control($wp_customize, 'appointment_management_pagetitle_height', array( 'label' => __('Set Height', 'appointment-management'), 'description' => __('This setting controls the page title height when no background image is set. If a background image is set, this setting will not apply.', 'appointment-management'), 'section' => 'appointment_management_page_title_options', 'settings' => 'appointment_management_pagetitle_height', 'input_attrs' => array( 'min' => 0, 'max' => 300, 'step' => 5, ), ))); $wp_customize->add_setting( 'appointment_management_page_title_style_separator', array( 'sanitize_callback' => 'sanitize_text_field', ) ); $wp_customize->add_control( new Appointment_Management_Separator_Custom_Control( $wp_customize, 'appointment_management_page_title_style_separator', array( 'label' => __( 'Page Title Styling Setting', 'appointment-management' ), 'section' => 'appointment_management_page_title_options', 'settings' => 'appointment_management_page_title_style_separator', ))); $wp_customize->add_setting( 'appointment_management_page_header_heading_tag', array( 'default' => 'h1', 'sanitize_callback' => 'appointment_management_sanitize_select', ) ); $wp_customize->add_control( 'appointment_management_page_header_heading_tag', array( 'label' => __( 'Page Title Heading Tag', 'appointment-management' ), 'section' => 'appointment_management_page_title_options', 'type' => 'select', 'choices' => array( 'h1' => __( 'H1', 'appointment-management' ), 'h2' => __( 'H2', 'appointment-management' ), 'h3' => __( 'H3', 'appointment-management' ), 'h4' => __( 'H4', 'appointment-management' ), 'h5' => __( 'H5', 'appointment-management' ), 'h6' => __( 'H6', 'appointment-management' ), 'p' => __( 'p', 'appointment-management' ), 'a' => __( 'a', 'appointment-management' ), 'div' => __( 'div', 'appointment-management' ), 'span' => __( 'span', 'appointment-management' ), ), ) ); $wp_customize->add_setting('appointment_management_page_header_layout', array( 'default' => 'left', 'sanitize_callback' => 'sanitize_text_field', )); $wp_customize->add_control('appointment_management_page_header_layout', array( 'label' => __('Style', 'appointment-management'), 'section' => 'appointment_management_page_title_options', 'description' => __('"Flex Layout Style" wont work below 600px (mobile media)', 'appointment-management'), 'settings' => 'appointment_management_page_header_layout', 'type' => 'radio', 'choices' => array( 'left' => __('Classic', 'appointment-management'), 'right' => __('Aligned Right', 'appointment-management'), 'center' => __('Centered Focus', 'appointment-management'), 'flex' => __('Flex Layout', 'appointment-management'), ), ));