get_setting( 'blogname' )->transport = 'postMessage'; $wp_customize->get_setting( 'blogdescription' )->transport = 'postMessage'; $wp_customize->get_setting( 'header_textcolor' )->transport = 'postMessage'; $wp_customize->get_setting( 'header_textcolor' )->default = '#EF4126'; } add_action( 'customize_register', 'adle_customize_register' ); /** * Binds JS handlers to make Theme Customizer preview reload changes asynchronously. */ function adle_customize_preview_js() { wp_enqueue_script( 'adle_customizer', get_template_directory_uri() . '/inc/js/customizer.js', array( 'customize-preview' ), '20150423', true ); } add_action( 'customize_preview_init', 'adle_customize_preview_js' ); /** * Options for Sourcewp Theme Customizer. */ function adle_customizer( $wp_customize ) { /* Main option Settings Panel */ $wp_customize->add_panel('adle_main_options', array( 'capability' => 'edit_theme_options', 'theme_supports' => '', 'title' => __('Sourcewp Options', 'adle'), 'description' => __('Panel to update adle theme options', 'adle'), // Include html tags such as
. 'priority' => 10 // Mixed with top-level-section hierarchy. )); // Layout options global $site_layout; $wp_customize->add_setting('adle[site_layout]', array( 'default' => 'side-pull-left', 'type' => 'option', 'sanitize_callback' => 'adle_sanitize_layout' )); $wp_customize->add_control('adle[site_layout]', array( 'label' => __('Website Layout Options', 'adle'), 'section' => 'adle_layout_options', 'type' => 'select', 'description' => __('Choose between different layout options to be used as default', 'adle'), 'choices' => $site_layout )); $wp_customize->add_setting('adle[element_color]', array( 'default' => '', 'type' => 'option', 'sanitize_callback' => 'adle_sanitize_hexcolor' )); $wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, 'adle[element_color]', array( 'label' => __('Element Color', 'adle'), 'description' => __('Default used if no color is selected','adle'), 'section' => 'adle_layout_options', 'settings' => 'adle[element_color]', ))); $wp_customize->add_setting('adle[element_color_hover]', array( 'default' => '', 'type' => 'option', 'sanitize_callback' => 'adle_sanitize_hexcolor' )); $wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, 'adle[element_color_hover]', array( 'label' => __('Element color on hover', 'adle'), 'description' => __('Default used if no color is selected','adle'), 'section' => 'adle_layout_options', 'settings' => 'adle[element_color_hover]', ))); /* Sourcewp Typography Options */ $wp_customize->add_section('adle_typography_options', array( 'title' => __('Typography', 'adle'), 'priority' => 31, 'panel' => 'adle_main_options' )); global $typography_defaults; // Typography Options global $typography_options; $wp_customize->add_setting('adle[main_body_typography][size]', array( 'default' => $typography_defaults['size'], 'type' => 'option', 'sanitize_callback' => 'adle_sanitize_typo_size' )); $wp_customize->add_control('adle[main_body_typography][size]', array( 'label' => __('Main Body Text', 'adle'), 'description' => __('Used in p tags', 'adle'), 'section' => 'adle_typography_options', 'type' => 'select', 'choices' => $typography_options['sizes'] )); $wp_customize->add_setting('adle[main_body_typography][face]', array( 'default' => $typography_defaults['face'], 'type' => 'option', 'sanitize_callback' => 'adle_sanitize_typo_face' )); $wp_customize->add_control('adle[main_body_typography][face]', array( 'section' => 'adle_typography_options', 'type' => 'select', 'choices' => $typography_options['faces'] )); $wp_customize->add_setting('adle[main_body_typography][style]', array( 'default' => $typography_defaults['style'], 'type' => 'option', 'sanitize_callback' => 'adle_sanitize_typo_style' )); $wp_customize->add_control('adle[main_body_typography][style]', array( 'section' => 'adle_typography_options', 'type' => 'select', 'choices' => $typography_options['styles'] )); $wp_customize->add_setting('adle[main_body_typography][color]', array( 'default' => $typography_defaults['color'], 'type' => 'option', 'sanitize_callback' => 'adle_sanitize_hexcolor' )); $wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, 'adle[main_body_typography][color]', array( 'section' => 'adle_typography_options', ))); $wp_customize->add_setting('adle[heading_color]', array( 'default' => '', 'type' => 'option', 'sanitize_callback' => 'adle_sanitize_hexcolor' )); $wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, 'adle[heading_color]', array( 'label' => __('Heading Color', 'adle'), 'description' => __('Color for all headings (h1-h6)','adle'), 'section' => 'adle_typography_options', ))); $wp_customize->add_setting('adle[link_color]', array( 'default' => '', 'type' => 'option', 'sanitize_callback' => 'adle_sanitize_hexcolor' )); $wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, 'adle[link_color]', array( 'label' => __('Link Color', 'adle'), 'description' => __('Default used if no color is selected','adle'), 'section' => 'adle_typography_options', ))); $wp_customize->add_setting('adle[link_hover_color]', array( 'default' => '', 'type' => 'option', 'sanitize_callback' => 'adle_sanitize_hexcolor' )); $wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, 'adle[link_hover_color]', array( 'label' => __('Link:hover Color', 'adle'), 'description' => __('Default used if no color is selected','adle'), 'section' => 'adle_typography_options', ))); /* Sourcewp Header Options */ $wp_customize->add_section('adle_header_options', array( 'title' => __('Header', 'adle'), 'priority' => 31, 'panel' => 'adle_main_options' )); $wp_customize->add_setting('adle[top_nav_bg_color]', array( 'default' => '', 'type' => 'option', 'sanitize_callback' => 'adle_sanitize_hexcolor' )); $wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, 'adle[top_nav_bg_color]', array( 'label' => __('Top nav background color', 'adle'), 'description' => __('Default used if no color is selected','adle'), 'section' => 'adle_header_options', ))); $wp_customize->add_setting('adle[top_nav_link_color]', array( 'default' => '', 'type' => 'option', 'sanitize_callback' => 'adle_sanitize_hexcolor' )); $wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, 'adle[top_nav_link_color]', array( 'label' => __('Top nav item color', 'adle'), 'description' => __('Link color','adle'), 'section' => 'adle_header_options', ))); $wp_customize->add_setting('adle[top_nav_dropdown_bg]', array( 'default' => '', 'type' => 'option', 'sanitize_callback' => 'adle_sanitize_hexcolor' )); $wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, 'adle[top_nav_dropdown_bg]', array( 'label' => __('Top nav dropdown background color', 'adle'), 'description' => __('Background of dropdown item hover color','adle'), 'section' => 'adle_header_options', ))); $wp_customize->add_setting('adle[top_nav_dropdown_item]', array( 'default' => '', 'type' => 'option', 'sanitize_callback' => 'adle_sanitize_hexcolor' )); $wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, 'adle[top_nav_dropdown_item]', array( 'label' => __('Top nav dropdown item color', 'adle'), 'description' => __('Dropdown item color','adle'), 'section' => 'adle_header_options', ))); /* Sourcewp Footer Options */ $wp_customize->add_section('adle_footer_options', array( 'title' => __('Footer', 'adle'), 'priority' => 31, 'panel' => 'adle_main_options' )); $wp_customize->add_setting('adle[footer_widget_bg_color]', array( 'default' => '', 'type' => 'option', 'sanitize_callback' => 'adle_sanitize_hexcolor' )); $wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, 'adle[footer_widget_bg_color]', array( 'label' => __('Footer widget area background color', 'adle'), 'section' => 'adle_footer_options', ))); $wp_customize->add_setting('adle[footer_bg_color]', array( 'default' => '', 'type' => 'option', 'sanitize_callback' => 'adle_sanitize_hexcolor' )); $wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, 'adle[footer_bg_color]', array( 'label' => __('Footer background color', 'adle'), 'section' => 'adle_footer_options', ))); $wp_customize->add_setting('adle[footer_text_color]', array( 'default' => '', 'type' => 'option', 'sanitize_callback' => 'adle_sanitize_hexcolor' )); $wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, 'adle[footer_text_color]', array( 'label' => __('Footer text color', 'adle'), 'section' => 'adle_footer_options', ))); $wp_customize->add_setting('adle[footer_link_color]', array( 'default' => '', 'type' => 'option', 'sanitize_callback' => 'adle_sanitize_hexcolor' )); $wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, 'adle[footer_link_color]', array( 'label' => __('Footer link color', 'adle'), 'section' => 'adle_footer_options', ))); $wp_customize->add_setting('adle[custom_footer_text]', array( 'default' => '', 'type' => 'option', 'sanitize_callback' => 'adle_sanitize_strip_slashes' )); $wp_customize->add_control('adle[custom_footer_text]', array( 'label' => __('Footer information', 'adle'), 'description' => sprintf(__('Copyright text in footer', 'adle')), 'section' => 'adle_footer_options', 'type' => 'textarea' )); /* Sourcewp Other Options */ $wp_customize->add_section('adle_other_options', array( 'title' => __('Other', 'adle'), 'priority' => 31, 'panel' => 'adle_main_options' )); $wp_customize->add_setting('adle[custom_css]', array( 'default' => '', 'type' => 'option', 'sanitize_callback' => 'adle_sanitize_strip_slashes' )); $wp_customize->add_control('adle[custom_css]', array( 'label' => __('Custom CSS', 'adle'), 'description' => sprintf(__('Additional CSS', 'adle')), 'section' => 'adle_other_options', 'type' => 'textarea' )); $wp_customize->add_section('adle_important_links', array( 'priority' => 5, 'title' => __('Support and Documentation', 'adle') )); $wp_customize->add_setting('adle[imp_links]', array( 'sanitize_callback' => 'esc_url_raw' )); $wp_customize->add_control( new Sourcewp_Important_Links( $wp_customize, 'adle[imp_links]', array( 'section' => 'adle_important_links', 'type' => 'adle-important-links' ))); } add_action( 'customize_register', 'adle_customizer' ); /** * Sanitize checkbox for WordPress customizer */ function adle_sanitize_checkbox( $input ) { if ( $input == 1 ) { return 1; } else { return ''; } } /** * Adds sanitization callback function: colors * @package Sourcewp */ function adle_sanitize_hexcolor($color) { if ($unhashed = sanitize_hex_color_no_hash($color)) return '#' . $unhashed; return $color; } /** * Adds sanitization callback function: Nohtml * @package Sourcewp */ function adle_sanitize_nohtml($input) { return wp_filter_nohtml_kses($input); } /** * Adds sanitization callback function: Number * @package Sourcewp */ function adle_sanitize_number($input) { if ( isset( $input ) && is_numeric( $input ) ) { return $input; } } /** * Adds sanitization callback function: Strip Slashes * @package Sourcewp */ function adle_sanitize_strip_slashes($input) { return wp_kses_stripslashes($input); } /** * Adds sanitization callback function: Slider Category * @package Sourcewp */ function adle_sanitize_slidecat( $input ) { global $options_categories; if ( array_key_exists( $input, $options_categories ) ) { return $input; } else { return ''; } } /** * Adds sanitization callback function: Sidebar Layout * @package Sourcewp */ function adle_sanitize_layout( $input ) { global $site_layout; if ( array_key_exists( $input, $site_layout ) ) { return $input; } else { return ''; } } /** * Adds sanitization callback function: Typography Size * @package Sourcewp */ function adle_sanitize_typo_size( $input ) { global $typography_options,$typography_defaults; if ( array_key_exists( $input, $typography_options['sizes'] ) ) { return $input; } else { return $typography_defaults['size']; } } /** * Adds sanitization callback function: Typography Face * @package Sourcewp */ function adle_sanitize_typo_face( $input ) { global $typography_options,$typography_defaults; if ( array_key_exists( $input, $typography_options['faces'] ) ) { return $input; } else { return $typography_defaults['face']; } } /** * Adds sanitization callback function: Typography Style * @package Sourcewp */ function adle_sanitize_typo_style( $input ) { global $typography_options,$typography_defaults; if ( array_key_exists( $input, $typography_options['styles'] ) ) { return $input; } else { return $typography_defaults['style']; } } /** * Add CSS for custom controls */ function adle_customizer_custom_control_css() { ?>