get_setting('blogname')->transport = 'postMessage'; $wp_customize->get_setting('blogdescription')->transport = 'postMessage'; $wp_customize->get_setting('header_textcolor')->transport = 'postMessage'; //select sanitization function function affiliatex_sanitize_select($input, $setting) { $input = sanitize_key($input); $choices = $setting->manager->get_control($setting->id)->choices; return (array_key_exists($input, $choices) ? $input : $setting->default); } $wp_customize->add_setting('affiliatex_hide_tagline', array( 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'default' => ' ', 'sanitize_callback' => 'absint', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_hide_tagline', array( 'label' => __('Hide Site Tagline?', 'affiliatex'), 'section' => 'title_tagline', 'settings' => 'affiliatex_hide_tagline', 'type' => 'checkbox', )); $wp_customize->add_panel('affiliatex_settings', array( 'priority' => 50, 'title' => __('AffiliateX Theme settings', 'affiliatex'), 'description' => __('All AffiliateX theme settings', 'affiliatex'), )); $wp_customize->add_section('affiliatex_header', array( 'title' => __('AffiliateX Header Settings', 'affiliatex'), 'capability' => 'edit_theme_options', 'description' => __('AffiliateX theme header settings', 'affiliatex'), 'panel' => 'affiliatex_settings', )); $wp_customize->add_setting('affiliatex_header_top', array( 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'default' => '1', 'sanitize_callback' => 'absint', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_header_top', array( 'label' => __('Show Header Area Top?', 'affiliatex'), 'section' => 'affiliatex_header', 'settings' => 'affiliatex_header_top', 'type' => 'checkbox', )); $wp_customize->add_setting('affiliatex_latest_news', array( 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'default' => '1', 'sanitize_callback' => 'absint', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_latest_news', array( 'label' => __('Show Latest News Ticker?', 'affiliatex'), 'section' => 'affiliatex_header', 'settings' => 'affiliatex_latest_news', 'type' => 'checkbox', 'active_callback' => 'affiliatex_header_top_calback', )); $wp_customize->add_setting('affiliatex_date_show', array( 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'default' => '1', 'sanitize_callback' => 'absint', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_date_show', array( 'label' => __('Date Show?', 'affiliatex'), 'section' => 'affiliatex_header', 'settings' => 'affiliatex_date_show', 'type' => 'checkbox', 'active_callback' => 'affiliatex_header_top_calback', )); $wp_customize->add_setting('affiliatex_headermiddle_show', array( 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'default' => '', 'sanitize_callback' => 'absint', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_headermiddle_show', array( 'label' => __('Show Header Middle?', 'affiliatex'), 'section' => 'affiliatex_header', 'settings' => 'affiliatex_headermiddle_show', 'type' => 'checkbox', )); $wp_customize->add_setting('affiliatex_mlogo_show', array( 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'default' => '1', 'sanitize_callback' => 'absint', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_mlogo_show', array( 'label' => __('Show Header Middle Logo?', 'affiliatex'), 'section' => 'affiliatex_header', 'settings' => 'affiliatex_mlogo_show', 'type' => 'checkbox', 'active_callback' => 'affiliatex_header_middle_callback', )); $wp_customize->add_setting('affiliatex_search_show', array( 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'default' => '1', 'sanitize_callback' => 'absint', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_search_show', array( 'label' => __('Show Header Search?', 'affiliatex'), 'section' => 'affiliatex_header', 'settings' => 'affiliatex_search_show', 'type' => 'checkbox', 'active_callback' => 'affiliatex_header_middle_callback', )); $wp_customize->add_setting('affiliatex_header_social_show', array( 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'default' => 1, 'sanitize_callback' => 'absint', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_header_social_show', array( 'label' => __('Show Header Social?', 'affiliatex'), 'section' => 'affiliatex_header', 'settings' => 'affiliatex_header_social_show', 'type' => 'checkbox', 'active_callback' => 'affiliatex_header_middle_callback', )); // header social link start // Header facebook url $wp_customize->add_setting('affiliatex_hfacebook_link', array( 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'sanitize_callback' => 'esc_url_raw', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_hfacebook_link', array( 'label' => __('Header Facebook url', 'affiliatex'), 'section' => 'affiliatex_header', 'settings' => 'affiliatex_hfacebook_link', 'type' => 'url', 'active_callback' => 'affiliatex_header_social_callback', )); // Header twitter url $wp_customize->add_setting('affiliatex_htwitter_link', array( 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'sanitize_callback' => 'esc_url_raw', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_htwitter_link', array( 'label' => __('Header Twitter url', 'affiliatex'), 'section' => 'affiliatex_header', 'settings' => 'affiliatex_htwitter_link', 'type' => 'url', 'active_callback' => 'affiliatex_header_social_callback', )); // Header linkedin url $wp_customize->add_setting('affiliatex_hlinkedin_link', array( 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'sanitize_callback' => 'esc_url_raw', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_hlinkedin_link', array( 'label' => __('Header Linkedin url', 'affiliatex'), 'section' => 'affiliatex_header', 'settings' => 'affiliatex_hlinkedin_link', 'type' => 'url', 'active_callback' => 'affiliatex_header_social_callback', )); // Header linkedin url $wp_customize->add_setting('affiliatex_hyoutube_link', array( 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'sanitize_callback' => 'esc_url_raw', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_hyoutube_link', array( 'label' => __('Header Youtube url', 'affiliatex'), 'section' => 'affiliatex_header', 'settings' => 'affiliatex_hyoutube_link', 'type' => 'url', 'active_callback' => 'affiliatex_header_social_callback', )); // Header pinterest url $wp_customize->add_setting('affiliatex_hpinterest_link', array( 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'sanitize_callback' => 'esc_url_raw', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_hpinterest_link', array( 'label' => __('Header Pinterest url', 'affiliatex'), 'section' => 'affiliatex_header', 'settings' => 'affiliatex_hpinterest_link', 'type' => 'url', 'active_callback' => 'affiliatex_header_social_callback', )); // Header INSTAGRAM url $wp_customize->add_setting('affiliatex_hinstagram_link', array( 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'sanitize_callback' => 'esc_url_raw', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_hinstagram_link', array( 'label' => __('Header Instagram url', 'affiliatex'), 'section' => 'affiliatex_header', 'settings' => 'affiliatex_hinstagram_link', 'type' => 'url', 'active_callback' => 'affiliatex_header_social_callback', )); // Header Menu bar $wp_customize->add_setting('affiliatex_menubar_show', array( 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'default' => 1, 'sanitize_callback' => 'absint', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_menubar_show', array( 'label' => __('Show Menubar Section?', 'affiliatex'), 'section' => 'affiliatex_header', 'settings' => 'affiliatex_menubar_show', 'type' => 'checkbox', )); $wp_customize->add_setting('affiliatex_menubarlogo_show', array( 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'default' => 1, 'sanitize_callback' => 'absint', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_menubarlogo_show', array( 'label' => __('Show Menubar Logo?', 'affiliatex'), 'section' => 'affiliatex_header', 'settings' => 'affiliatex_menubarlogo_show', 'type' => 'checkbox', 'active_callback' => 'affiliatex_menubar_callback', )); $wp_customize->add_setting('affiliatex_mainmenu_show', array( 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'default' => 1, 'sanitize_callback' => 'absint', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_mainmenu_show', array( 'label' => __('Show Main Menu?', 'affiliatex'), 'section' => 'affiliatex_header', 'settings' => 'affiliatex_mainmenu_show', 'type' => 'checkbox', 'active_callback' => 'affiliatex_menubar_callback', )); $wp_customize->add_setting('affiliatex_menusearch_show', array( 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'default' => 1, 'sanitize_callback' => 'absint', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_menusearch_show', array( 'label' => __('Show Menubar Search Icon?', 'affiliatex'), 'section' => 'affiliatex_header', 'settings' => 'affiliatex_menusearch_show', 'type' => 'checkbox', 'active_callback' => 'affiliatex_menubar_callback', )); //NewsBox PLus blog settings $wp_customize->add_section('affiliatex_blog', array( 'title' => __('AffiliateX Blog Settings', 'affiliatex'), 'capability' => 'edit_theme_options', 'description' => __('AffiliateX theme blog settings', 'affiliatex'), 'panel' => 'affiliatex_settings', )); $wp_customize->add_setting('affiliatex_blog_container', array( 'default' => 'container', 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'sanitize_callback' => 'affiliatex_sanitize_select', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_blog_container', array( 'label' => __('Container type', 'affiliatex'), 'description' => __('You can set standard container or full width container. ', 'affiliatex'), 'section' => 'affiliatex_blog', 'settings' => 'affiliatex_blog_container', 'type' => 'select', 'choices' => array( 'container' => __('Standard Container', 'affiliatex'), 'container-fluid' => __('Full width Container', 'affiliatex'), ), )); $wp_customize->add_setting('affiliatex_blog_layout', array( 'default' => 'rightside', 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'sanitize_callback' => 'affiliatex_sanitize_select', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_blog_layout', array( 'label' => __('Select Blog Layout', 'affiliatex'), 'description' => __('Right and Left sidebar only show when sidebar widget is available. ', 'affiliatex'), 'section' => 'affiliatex_blog', 'settings' => 'affiliatex_blog_layout', 'type' => 'select', 'choices' => array( 'rightside' => __('Right Sidebar', 'affiliatex'), 'leftside' => __('Left Sidebar', 'affiliatex'), 'fullwidth' => __('No Sidebar', 'affiliatex'), ), )); $wp_customize->add_setting('affiliatex_blog_style', array( 'default' => 'grid', 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'sanitize_callback' => 'affiliatex_sanitize_select', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_blog_style', array( 'label' => __('Select Blog Style', 'affiliatex'), 'section' => 'affiliatex_blog', 'settings' => 'affiliatex_blog_style', 'type' => 'select', 'choices' => array( 'grid' => __('Grid Style', 'affiliatex'), 'list' => __('List Style', 'affiliatex'), 'classic' => __('Classic Style', 'affiliatex'), ), )); //AffiliateX page settings $wp_customize->add_section('affiliatex_page', array( 'title' => __('AffiliateX Page Settings', 'affiliatex'), 'capability' => 'edit_theme_options', 'description' => __('AffiliateX theme blog settings', 'affiliatex'), 'panel' => 'affiliatex_settings', )); $wp_customize->add_setting('affiliatex_page_container', array( 'default' => 'container', 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'sanitize_callback' => 'affiliatex_sanitize_select', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_page_container', array( 'label' => __('Page Container type', 'affiliatex'), 'description' => __('You can set standard container or full width container for page. ', 'affiliatex'), 'section' => 'affiliatex_page', 'settings' => 'affiliatex_page_container', 'type' => 'select', 'choices' => array( 'container' => __('Standard Container', 'affiliatex'), 'container-fluid' => __('Full width Container', 'affiliatex'), ), )); $wp_customize->add_setting('affiliatex_page_header', array( 'default' => 'show', 'capability' => 'edit_theme_options', 'type' => 'theme_mod', 'sanitize_callback' => 'affiliatex_sanitize_select', 'transport' => 'refresh', )); $wp_customize->add_control('affiliatex_page_header', array( 'label' => __('Show Page header', 'affiliatex'), 'section' => 'affiliatex_page', 'settings' => 'affiliatex_page_header', 'type' => 'select', 'choices' => array( 'show' => __('Show all pages', 'affiliatex'), 'hide-home' => __('Hide Only Front Page', 'affiliatex'), 'hide' => __('Hide All Pages', 'affiliatex'), ), )); if (isset($wp_customize->selective_refresh)) { $wp_customize->selective_refresh->add_partial( 'blogname', array( 'selector' => '.site-title a', 'render_callback' => 'affiliatex_customize_partial_blogname', ) ); $wp_customize->selective_refresh->add_partial( 'blogdescription', array( 'selector' => '.site-description', 'render_callback' => 'affiliatex_customize_partial_blogdescription', ) ); } } add_action('customize_register', 'affiliatex_customize_register'); /** * Render the site title for the selective refresh partial. * * @return void */ function affiliatex_customize_partial_blogname() { bloginfo('name'); } /** * Render the site tagline for the selective refresh partial. * * @return void */ function affiliatex_customize_partial_blogdescription() { bloginfo('description'); } /** * Binds JS handlers to make Theme Customizer preview reload changes asynchronously. */ function affiliatex_customize_preview_js() { wp_enqueue_script('affiliatex-customizer', get_template_directory_uri() . '/assets/js/customizer.js', array('customize-preview'), AFFILIATEX_VERSION, true); } add_action('customize_preview_init', 'affiliatex_customize_preview_js');