add_section('business_roy_slider_section', array( 'title' => esc_html__('Home Slider Settings','business-roy'), 'priority' => 25 )); $wp_customize->add_setting('business_roy_slider_nav', array( 'transport' => 'postMessage', 'sanitize_callback' => 'wp_kses_post', )); $wp_customize->add_control(new BusinessRoy_Custom_Control_Tab($wp_customize, 'business_roy_slider_nav', array( 'type' => 'tab', 'section' => 'business_roy_slider_section', 'buttons' => array( array( 'name' => esc_html__('Content', 'business-roy'), 'fields' => array( 'business_roy_banner_slider_section', 'business_roy_slider_type', 'business_roy_slider_advance_settings', 'business_roy_banner_sliders', 'business_roy_video_banner_url', 'slider-controls' ), 'active' => true, ), array( 'name' => esc_html__('Style', 'business-roy'), 'fields' => array( 'business_roy_banner_overlay_color', 'business_roy_caption_title_font_size' ), ), array( 'name' => esc_html__('Advanced', 'business-roy'), 'fields' => array( 'business_roy_slider_height_msg', 'business_roy_slider_height_group', 'business_roy_slider_seperator0', 'business_roy_slider_section_seperator', 'business_roy_slider_bottom_seperator', 'business_roy_slider_bs_color', 'business_roy_slider_bs_height' ) ) ), ))); /** * Enable/Disable Option * * @since 1.0.0 */ $wp_customize->add_setting('business_roy_banner_slider_section', array( 'default' => 'enable', 'transport' => 'postMessage', 'sanitize_callback' => 'business_roy_sanitize_switch', //done )); $wp_customize->add_control(new BusinessRoy_Switch_Control($wp_customize, 'business_roy_banner_slider_section', array( 'label' => esc_html__('Enable', 'business-roy'), 'section' => 'business_roy_slider_section', 'switch_label' => array( 'enable' => esc_html__('Yes', 'business-roy'), 'disable' => esc_html__('No', 'business-roy'), ), ))); $wp_customize->add_setting('business_roy_slider_type', array( 'default' => 'default', 'transport' => 'postMessage', 'sanitize_callback' => 'business_roy_sanitize_select' )); $wp_customize->add_control('business_roy_slider_type', array( 'section' => 'business_roy_slider_section', 'type' => 'radio', 'label' => esc_html__('Select Type', 'business-roy'), 'choices' => array( 'default' => esc_html__('Default Slider', 'business-roy'), 'advance' => esc_html__('Advance Slider', 'business-roy'), 'video' => esc_html__('Video Banner', 'business-roy') ) )); // Normal Page Slider Type $wp_customize->add_setting('business_roy_banner_sliders', array( 'transport' => 'postMessage', 'sanitize_callback' => 'business_roy_sanitize_repeater', //done 'default' => json_encode(array( array( 'subtitile' => '', 'slider_page' => '', 'button_text' => '', 'button_url' => '', 'button_one_text' => '', 'button_one_url' => '', ) )) )); $wp_customize->add_control(new BusinessRoy_Repeater_Control( $wp_customize, 'business_roy_banner_sliders', array( 'label' => esc_html__('Slides Collection', 'business-roy'), 'section' => 'business_roy_slider_section', 'settings' => 'business_roy_banner_sliders', 'box_label' => esc_html__('Slide Settings', 'business-roy'), 'add_label' => esc_html__('Add New Slider', 'business-roy'), ), array( 'subtitile' => array( 'type' => 'text', 'label' => __("Super Title", 'business-roy'), ), 'slider_page' => array( 'type' => 'select', 'label' => esc_html__('Select Slide Page', 'business-roy'), 'options' => $pages ), 'button_text' => array( 'type' => 'text', 'label' => esc_html__('First Button Text', 'business-roy'), 'default' => '' ), 'button_url' => array( 'type' => 'url', 'label' => esc_html__('First Button Url', 'business-roy'), 'default' => '' ), 'button_one_text' => array( 'type' => 'text', 'label' => esc_html__('Second Button Text', 'business-roy'), 'default' => '' ), 'button_one_url' => array( 'type' => 'url', 'label' => esc_html__('Second Button Url', 'business-roy'), 'default' => '' ) ) )); $id = "slider"; $wp_customize->add_setting("business_roy_{$id}_advance_settings", array( 'transport' => 'postMessage', 'sanitize_callback' => 'business_roy_sanitize_repeater', //done 'default' => json_encode(array( array( 'block_image' => '', 'block_subtitile' => '', 'block_title' => '', 'block_desc' => '', 'button_text' => '', 'button_url' => '', 'button_one_text' => '', 'button_one_url' => '', ) )) )); $wp_customize->add_control(new BusinessRoy_Repeater_Control( $wp_customize, "business_roy_{$id}_advance_settings", array( 'label' => esc_html__('Banner Slider Settings', 'business-roy'), 'section' => "business_roy_{$id}_section", 'settings' => "business_roy_{$id}_advance_settings", 'box_label' => esc_html__('Slider Block Item', 'business-roy'), 'add_label' => esc_html__('Add New Slide', 'business-roy'), ), array( 'block_image' => array( 'type' => 'upload', 'label' => __("Upload Image", 'business-roy'), ), 'block_subtitile' => array( 'type' => 'text', 'label' => __("Super Title", 'business-roy'), ), 'block_title' => array( 'type' => 'text', 'label' => __("Title", 'business-roy'), ), 'block_desc' => array( 'type' => 'textarea', 'label' => __("Short Description", 'business-roy'), ), 'button_text' => array( 'type' => 'text', 'label' => esc_html__('Enter First Button Text', 'business-roy'), 'default' => '' ), 'button_url' => array( 'type' => 'url', 'label' => esc_html__('Enter First Button Url', 'business-roy'), 'default' => '' ), 'button_one_text' => array( 'type' => 'text', 'label' => esc_html__('Enter Second Button Text', 'business-roy'), 'default' => '' ), 'button_one_url' => array( 'type' => 'url', 'label' => esc_html__('Enter Second Button Url', 'business-roy'), 'default' => '' ) ) )); /** video banner */ $wp_customize->add_setting('business_roy_video_banner_url', array( 'default' => 'DJlmVOSEvGA', 'sanitize_callback' => 'sanitize_text_field', 'transport' => 'postMessage' )); $wp_customize->add_control('business_roy_video_banner_url', array( 'section' => 'business_roy_slider_section', 'type' => 'text', 'label' => esc_html__('Video Id', 'business-roy'), 'description' => 'https://www.youtube.com/watch?v=DJlmVOSEvGA. ' . esc_html__('Add only DJlmVOSEvGA', 'business-roy') )); /** slider config controls */ $wp_customize->add_setting('slider-controls', array( 'sanitize_callback' => 'business_roy_sanitize_field_background', 'transport' => 'postMessage', 'default' => json_encode(array( 'loop' => 1, 'autoplay' => 1, 'pager' => 1, 'controls' => 1, 'usecss' => 1, 'easing' => 'fadeOut', 'slideendanimation' => 1, 'drag' => 1, 'speed' => 5000, 'pause' => 4000 )), ) ); $wp_customize->add_control(new BusinessRoy_Custom_Control_Group( $wp_customize, 'slider-controls', array( 'label' => esc_html__( 'Slider Controls', 'business-roy' ), 'section' => 'business_roy_slider_section', 'settings' => 'slider-controls', ), array( 'loop' => array( 'type' => 'checkbox', 'label' => esc_html__( 'Loop', 'business-roy' ), ), 'autoplay' => array( 'type' => 'checkbox', 'label' => esc_html__( 'Auto Play', 'business-roy' ), ), 'pager' => array( 'type' => 'checkbox', 'label' => esc_html__( 'Pager', 'business-roy' ), ), 'controls' => array( 'type' => 'checkbox', 'label' => esc_html__( 'Controls', 'business-roy' ), ), 'drag' => array( 'type' => 'checkbox', 'label' => esc_html__( 'Drag', 'business-roy' ), ), 'easing' => array( 'type' => 'select', 'label' => esc_html__( 'Transition Type', 'business-roy' ), 'options' => array( 'fadeOut' => __("fadeOut", 'business-roy'), 'fadeIn' => __("fadeIn", 'business-roy'), 'slide' => __("Slide", 'business-roy'), ) ), 'speed' => array( 'type' => 'text', 'label' => esc_html__( 'Speed', 'business-roy' ), ), 'pause' => array( 'type' => 'text', 'label' => esc_html__( 'Pause', 'business-roy' ), ) ) ) ); /** * style */ $wp_customize->add_setting('business_roy_banner_overlay_color', array( 'default' => 'rgba(0, 0, 0, 0.45)', 'transport' => 'postMessage', 'sanitize_callback' => 'business_roy_sanitize_color_alpha', )); $wp_customize->add_control(new BusinessRoy_Alpha_Color_Control($wp_customize, 'business_roy_banner_overlay_color', array( 'label' => esc_html__('Background Overlay Color', 'business-roy'), 'section' => 'business_roy_slider_section' ))); $wp_customize->add_setting( 'business_roy_caption_title_font_size', array( 'default' => 50, 'transport' => 'postMessage', 'sanitize_callback' => 'absint' )); $wp_customize->add_control(new BusinessRoy_Range_Control($wp_customize, 'business_roy_caption_title_font_size', array( 'section' => 'business_roy_slider_section', 'label' => esc_html__('Title Font Size', 'business-roy'), 'input_attrs' => array( 'min' => 10, 'max' => 200, 'step' => 1 ) ))); /**** * Slider Caption Settings */ $wp_customize->add_setting('business_roy_slider_height_msg', array( 'sanitize_callback' => 'sanitize_text_field', 'transport' => 'postMessage' )); $wp_customize->add_control(new BusinessRoy_Customize_Heading($wp_customize, 'business_roy_slider_height_msg', array( 'section' => 'business_roy_slider_section', 'label' => esc_html__(' Height', 'business-roy') ))); $wp_customize->add_setting("business_roy_slider_height", array( 'sanitize_callback' => 'business_roy_sanitize_number_blank', 'default' => 90, 'transport' => 'postMessage' )); $wp_customize->add_setting("business_roy_slider_height_tablet", array( 'sanitize_callback' => 'business_roy_sanitize_number_blank', 'default' => 90, 'transport' => 'postMessage' )); $wp_customize->add_setting("business_roy_slider_height_mobile", array( 'sanitize_callback' => 'business_roy_sanitize_number_blank', 'default' => 90, 'transport' => 'postMessage' )); $wp_customize->add_control(new BusinessRoy_Range_Slider_Control($wp_customize, "business_roy_slider_height_group", array( 'section' => "business_roy_slider_section", 'transport' => 'postMessage', 'label' => esc_html__('Height(vh)', 'business-roy'), 'input_attrs' => array( 'min' => 20, 'max' => 100, 'step' => 1, ), 'settings' => array( 'desktop' => "business_roy_slider_height", 'tablet' => "business_roy_slider_height_tablet", 'mobile' => "business_roy_slider_height_mobile", ), ))); /** * seprator */ $wp_customize->add_setting("business_roy_slider_seperator0", array( 'sanitize_callback' => 'sanitize_text_field', 'transport' => 'postMessage' )); $wp_customize->add_control(new BusinessRoy_Separator_Control($wp_customize, "business_roy_slider_seperator0", array( 'section' => "business_roy_slider_section", ))); $wp_customize->add_setting("business_roy_slider_section_seperator", array( 'transport' => 'postMessage', 'sanitize_callback' => 'sanitize_text_field', 'default' => 'no', )); $wp_customize->add_control("business_roy_slider_section_seperator", array( 'section' => "business_roy_slider_section", 'type' => 'select', 'label' => esc_html__('Separator', 'business-roy'), 'choices' => array( 'no' => esc_html__('None', 'business-roy'), 'bottom' => esc_html__('Bottom Separator', 'business-roy'), ) )); $wp_customize->add_setting("business_roy_slider_bottom_seperator", array( 'sanitize_callback' => 'sanitize_text_field', 'default' => 'water-waves', 'transport' => 'postMessage' )); $wp_customize->add_control("business_roy_slider_bottom_seperator", array( 'section' => "business_roy_slider_section", 'type' => 'select', 'label' => esc_html__('Bottom Separator', 'business-roy'), 'choices' => business_roy_svg_seperator(), )); $wp_customize->add_setting("business_roy_slider_bs_color", array( 'default' => '#e42032', 'sanitize_callback' => 'business_roy_sanitize_color_alpha', 'transport' => 'postMessage' )); $wp_customize->add_control(new BusinessRoy_Alpha_Color_Control($wp_customize, "business_roy_slider_bs_color", array( 'section' => "business_roy_slider_section", 'label' => esc_html__('Bottom Separator Color', 'business-roy'), ))); $wp_customize->add_setting("business_roy_slider_bs_height", array( 'sanitize_callback' => 'business_roy_sanitize_number_blank', 'default' => 200, 'transport' => 'postMessage' )); $wp_customize->add_setting("business_roy_slider_bs_height_tablet", array( 'sanitize_callback' => 'business_roy_sanitize_number_blank', 'default' => 100, 'transport' => 'postMessage' )); $wp_customize->add_setting("business_roy_slider_bs_height_mobile", array( 'sanitize_callback' => 'business_roy_sanitize_number_blank', 'default' => 50, 'transport' => 'postMessage' )); $wp_customize->add_control(new BusinessRoy_Range_Slider_Control($wp_customize, "business_roy_slider_bs_height", array( 'section' => "business_roy_slider_section", 'transport' => 'postMessage', 'label' => esc_html__('Bottom Separator Height', 'business-roy'), 'input_attrs' => array( 'min' => 20, 'max' => 200, 'step' => 1, ), 'settings' => array( 'desktop' => "business_roy_slider_bs_height", 'tablet' => "business_roy_slider_bs_height_tablet", 'mobile' => "business_roy_slider_bs_height_mobile", ) ))); $wp_customize->selective_refresh->add_partial( 'business_roy_slider_refresh', array ( 'settings' => array( 'business_roy_banner_slider_section', 'business_roy_slider_type', 'business_roy_slider_advance_settings', 'business_roy_banner_sliders', 'business_roy_video_banner_url', 'slider-controls', 'business_roy_slider_section_seperator', 'business_roy_slider_bottom_seperator' ), 'selector' => '.banner-wrapper', 'fallback_refresh' => true, 'container_inclusive' => true, 'render_callback' => function () { if( get_theme_mod( 'business_roy_banner_slider_section' ) === 'enable' ) { return do_action('business_roy_slider_type'); } } )); /** * Upgrade Pro Version */ $wp_customize->add_setting('business_roy_slider_upgrade_text', array( 'sanitize_callback' => 'business_roy_sanitize_text' )); $wp_customize->add_control(new BusinessRoy_Upgrade_Text($wp_customize, 'business_roy_slider_upgrade_text', array( 'section' => 'business_roy_slider_section', 'label' => esc_html__('For More Settings,', 'business-roy'), 'choices' => array( esc_html__('Advanced Level of Customization', 'business-roy'), esc_html__('Select Different Slider Types from Default to Advance to Video to Single Banner to Revolution', 'business-roy'), esc_html__('Get Options to Enter Revolution Slider Shortcode', 'business-roy'), esc_html__('Get Slider Overlay Color Options', 'business-roy'), esc_html__('Change SuperTitle, Title, Description & Button Colors', 'business-roy'), esc_html__('Caption Background Color Options', 'business-roy'), esc_html__('Caption Text Alignment Options', 'business-roy'), esc_html__('Customize Margin & Padding', 'business-roy'), esc_html__('Adjust Slider Height & Font Size', 'business-roy'), ), 'priority' => 250, 'active_callback' => 'business_roy_upgrade_notice', )));