selective_refresh->add_partial( 'slider_image_' .strval( $birdfield_count ), array( 'selector' => '#slideitem_' .strval( $birdfield_count ) . ' .fixedimage', )); $wp_customize->selective_refresh->add_partial( 'slider_title_' .strval( $birdfield_count ), array( 'selector' => '#slideitem_' .strval( $birdfield_count ) . ' strong', )); $wp_customize->selective_refresh->add_partial( 'slider_description_' .strval( $birdfield_count ), array( 'selector' => '#slideitem_' .strval( $birdfield_count ) . ' span', )); $wp_customize->selective_refresh->add_partial( 'slider_link_' .strval( $birdfield_count ), array( 'selector' => '#slideitem_' .strval( $birdfield_count ) . ' a', )); } $wp_customize->selective_refresh->add_partial( 'slide_interval', array( 'selector' => '.slide-interval', )); // separation class birdfield_Info extends WP_Customize_Control { public $type = 'info'; public $label = ''; public function render_content() { ?>

label ); ?>

add_section( 'birdfield_slider', array( 'title' => __('Header Slider', 'birdfield' ), 'description' => __( 'You can add up to 5 images in the header slider. also you can add title, description, link URL for each image.', 'birdfield' ), 'priority' => 61, )); // use slider $wp_customize->add_setting( 'use_slider', array( 'default' => false, 'sanitize_callback' => 'birdfield_sanitize_checkbox', )); $wp_customize->add_control( 'use_slider', array( 'label' => __( 'Use Header Slider', 'birdfield' ), 'section' => 'birdfield_slider', 'type' => 'checkbox', 'settings' => 'use_slider', )); // Interval $wp_customize->add_setting( 'slide_interval', array( 'default' => 7000, 'sanitize_callback' => 'absint', 'transport' => 'postMessage' )); $wp_customize->add_control( 'slide_interval', array( 'label' => __( 'Slide Interval (1/1000 second)', 'birdfield' ), 'section' => 'birdfield_slider', 'type' => 'text', 'settings' => 'slide_interval', )); // Slider 1 - 5 for( $birdfield_count = 1; $birdfield_count <= 5; $birdfield_count++ ) { // Label $wp_customize->add_setting( 'birdfield_options[info]', array( 'type' => 'info_control', 'capability' => 'edit_theme_options', 'sanitize_callback' => 'esc_attr', )); $birdfield_label = ''; if( 1 == $birdfield_count ){ $birdfield_label = __( '1st slide', 'birdfield' ); } else if( 2 == $birdfield_count ){ $birdfield_label = __( '2nd slide', 'birdfield' ); } else if( 3 == $birdfield_count ){ $birdfield_label = __( '3rd slide', 'birdfield' ); } else if( 4 == $birdfield_count ){ $birdfield_label = __( '4th slide', 'birdfield' ); } else if( 5 == $birdfield_count ){ $birdfield_label = __( '5th slide', 'birdfield' ); } $wp_customize->add_control( new birdfield_Info( $wp_customize, 's' .strval( $birdfield_count ), array( 'label' => $birdfield_label, 'section' => 'birdfield_slider', 'settings' => 'birdfield_options[info]', 'priority' => ( $birdfield_count *10 ), ))); // Upload image $birdfield_default_text = ''; if( 1 == $birdfield_count ){ $birdfield_default_text = get_template_directory_uri() . '/images/header.jpg'; } $wp_customize->add_setting( 'slider_image_' .strval( $birdfield_count ), array( 'default' => $birdfield_default_text, 'sanitize_callback' => 'esc_url_raw', 'transport' => 'postMessage' )); $wp_customize->add_control( new WP_Customize_Image_Control( $wp_customize, 'slider_image_' .strval( $birdfield_count ), array( 'label' => __( 'Upload image', 'birdfield' ) .' ' .strval( $birdfield_count ), 'type' => 'image', 'section' => 'birdfield_slider', 'settings' => 'slider_image_' .strval( $birdfield_count ), 'priority' => ( $birdfield_count *10 ) + 1, ))); // Title $birdfield_default_text = ''; if( 1 == $birdfield_count ){ $birdfield_default_text = __( 'Hello world!','birdfield' ); } $wp_customize->add_setting( 'slider_title_' .strval( $birdfield_count ), array( 'default' => $birdfield_default_text, 'sanitize_callback' => 'birdfield_sanitize_text', 'transport' => 'postMessage' )); $wp_customize->add_control( 'slider_title_' .strval( $birdfield_count ), array( 'label' => __( 'Title', 'birdfield' ) .' ' .strval( $birdfield_count ), 'section' => 'birdfield_slider', 'type' => 'text', 'priority' => ( $birdfield_count *10 ) + 2 )); // Description $birdfield_default_text = ''; if( 1 == $birdfield_count ){ $birdfield_default_text = __( 'Begin your website.','birdfield' ); } $wp_customize->add_setting( 'slider_description_' .strval( $birdfield_count ), array( 'default' => $birdfield_default_text, 'sanitize_callback' => 'birdfield_sanitize_text', 'transport' => 'postMessage' )); $wp_customize->add_control( 'slider_description_' .strval( $birdfield_count ), array( 'label' => __( 'Description', 'birdfield' ) .' ' .strval( $birdfield_count ), 'section' => 'birdfield_slider', 'type' => 'text', 'priority' => ( $birdfield_count *10 ) + 3 )); // Link URL $birdfield_default_text = ''; if( 1 == $birdfield_count ){ $birdfield_default_text = '#'; } $wp_customize->add_setting( 'slider_link_' .strval( $birdfield_count ), array( 'default' => $birdfield_default_text, 'sanitize_callback' => 'esc_url_raw', 'transport' => 'postMessage' )); $wp_customize->add_control( 'slider_link_' .strval( $birdfield_count ), array( 'label' => __( 'Link URL', 'birdfield' ) .' ' .strval( $birdfield_count ), 'section' => 'birdfield_slider', 'type' => 'url', 'priority' => ( $birdfield_count *10 ) + 4 )); } } add_action( 'customize_register', 'birdfield_customize_headerslider' );