register_section_type( Camping_Zone_Button::class );
$manager->add_section(
new Camping_Zone_Button( $manager, 'camping_zone_pro', [
'title' => esc_html( CAMPING_ZONE_TEXT,'camping-zone' ),
'priority' => 0,
'button_text' => __( 'GET PREMIUM', 'camping-zone' ),
'button_url' => esc_url( CAMPING_ZONE_URL )
] )
);
} );
// Load the JS and CSS.
add_action( 'customize_controls_enqueue_scripts', function() {
$version = wp_get_theme()->get( 'Version' );
wp_enqueue_script(
'camping-zone-customize-section-button',
get_theme_file_uri( 'vendor/wptrt/customize-section-button/public/js/customize-controls.js' ),
[ 'customize-controls' ],
$version,
true
);
wp_enqueue_style(
'camping-zone-customize-section-button',
get_theme_file_uri( 'vendor/wptrt/customize-section-button/public/css/customize-controls.css' ),
[ 'customize-controls' ],
$version
);
} );
/**
* Add postMessage support for site title and description for the Theme Customizer.
*
* @param WP_Customize_Manager $wp_customize Theme Customizer object.
*/
function camping_zone_customize_register($wp_customize){
// Pro Version
class Camping_Zone_Customize_Pro_Version extends WP_Customize_Control {
public $type = 'pro_options';
public function render_content() {
echo 'For More '. esc_html( $this->label ) .'?';
echo '';
echo '';
echo ' '. esc_html( CAMPING_ZONE_BUY_TEXT,'camping-zone' ) .'';
echo '';
}
}
// Custom Controls
function Camping_Zone_sanitize_custom_control( $input ) {
return $input;
}
$wp_customize->get_setting('blogname')->transport = 'postMessage';
$wp_customize->get_setting('blogdescription')->transport = 'postMessage';
$wp_customize->add_setting('camping_zone_logo_title_text', array(
'default' => true,
'sanitize_callback' => 'camping_zone_sanitize_checkbox'
));
$wp_customize->add_control( new WP_Customize_Control($wp_customize,'camping_zone_logo_title_text',array(
'label' => __( 'Enable Disable Title', 'camping-zone' ),
'section' => 'title_tagline',
'settings' => 'camping_zone_logo_title_text',
'type' => 'checkbox',
)));
$wp_customize->add_setting('camping_zone_theme_description', array(
'default' => false,
'sanitize_callback' => 'camping_zone_sanitize_checkbox'
));
$wp_customize->add_control( new WP_Customize_Control($wp_customize,'camping_zone_theme_description',array(
'label' => __( 'Enable Disable Tagline', 'camping-zone' ),
'section' => 'title_tagline',
'settings' => 'camping_zone_theme_description',
'type' => 'checkbox',
)));
//Logo
$wp_customize->add_setting('camping_zone_logo_max_height',array(
'default' => '80',
'sanitize_callback' => 'camping_zone_sanitize_number_absint'
));
$wp_customize->add_control('camping_zone_logo_max_height',array(
'label' => esc_html__('Logo Width','camping-zone'),
'section' => 'title_tagline',
'type' => 'number'
));
// Global Color Settings
$wp_customize->add_section('camping_zone_global_color_settings',array(
'title' => esc_html__('Global Color Settings','camping-zone'),
'priority' => 28,
));
$wp_customize->add_setting( 'camping_zone_global_color', array(
'default' => '#25C1C7',
'sanitize_callback' => 'sanitize_hex_color'
));
$wp_customize->add_control( new WP_Customize_Color_Control( $wp_customize, 'camping_zone_global_color', array(
'description' => __('Change the global color of the theme in one click.', 'camping-zone'),
'section' => 'camping_zone_global_color_settings',
'settings' => 'camping_zone_global_color',
)));
// General Settings
$wp_customize->add_section('camping_zone_general_settings',array(
'title' => esc_html__('General Settings','camping-zone'),
'priority' => 30,
));
$wp_customize->add_setting('camping_zone_width_option',array(
'default' => 'Full Width',
'transport' => 'refresh',
'sanitize_callback' => 'camping_zone_sanitize_choices'
));
$wp_customize->add_control('camping_zone_width_option',array(
'type' => 'select',
'section' => 'camping_zone_general_settings',
'choices' => array(
'Full Width' => __('Full Width','camping-zone'),
'Wide Width' => __('Wide Width','camping-zone'),
'Boxed Width' => __('Boxed Width','camping-zone')
),
) );
$wp_customize->add_setting('camping_zone_nav_menu_text_transform',array(
'default'=> 'Uppercase',
'sanitize_callback' => 'camping_zone_sanitize_choices'
));
$wp_customize->add_control('camping_zone_nav_menu_text_transform',array(
'type' => 'radio',
'choices' => array(
'Uppercase' => __('Uppercase','camping-zone'),
'Capitalize' => __('Capitalize','camping-zone'),
'Lowercase' => __('Lowercase','camping-zone'),
),
'section'=> 'camping_zone_general_settings',
));
$wp_customize->add_setting('camping_zone_preloader_hide', array(
'default' => 0,
'sanitize_callback' => 'camping_zone_sanitize_checkbox'
));
$wp_customize->add_control( new WP_Customize_Control($wp_customize,'camping_zone_preloader_hide',array(
'label' => __( 'Show Theme Preloader', 'camping-zone' ),
'section' => 'camping_zone_general_settings',
'settings' => 'camping_zone_preloader_hide',
'type' => 'checkbox',
)));
$wp_customize->add_setting( 'camping_zone_preloader_bg_color', array(
'default' => '#25C1C7',
'sanitize_callback' => 'sanitize_hex_color'
));
$wp_customize->add_control( new WP_Customize_Color_Control( $wp_customize, 'camping_zone_preloader_bg_color', array(
'label' => esc_html__('Preloader Background Color','camping-zone'),
'section' => 'camping_zone_general_settings',
'settings' => 'camping_zone_preloader_bg_color'
)));
$wp_customize->add_setting( 'camping_zone_preloader_dot_1_color', array(
'default' => '#ffffff',
'sanitize_callback' => 'sanitize_hex_color'
));
$wp_customize->add_control( new WP_Customize_Color_Control( $wp_customize, 'camping_zone_preloader_dot_1_color', array(
'label' => esc_html__('Preloader First Dot Color','camping-zone'),
'section' => 'camping_zone_general_settings',
'settings' => 'camping_zone_preloader_dot_1_color'
)));
$wp_customize->add_setting( 'camping_zone_preloader_dot_2_color', array(
'default' => '#000000',
'sanitize_callback' => 'sanitize_hex_color'
));
$wp_customize->add_control( new WP_Customize_Color_Control( $wp_customize, 'camping_zone_preloader_dot_2_color', array(
'label' => esc_html__('Preloader Second Dot Color','camping-zone'),
'section' => 'camping_zone_general_settings',
'settings' => 'camping_zone_preloader_dot_2_color'
)));
$wp_customize->add_setting('camping_zone_scroll_hide', array(
'default' => false,
'sanitize_callback' => 'camping_zone_sanitize_checkbox'
));
$wp_customize->add_control( new WP_Customize_Control($wp_customize,'camping_zone_scroll_hide',array(
'label' => __( 'Show Theme Scroll To Top', 'camping-zone' ),
'section' => 'camping_zone_general_settings',
'settings' => 'camping_zone_scroll_hide',
'type' => 'checkbox',
)));
$wp_customize->add_setting('camping_zone_scroll_top_position',array(
'default' => 'Right',
'sanitize_callback' => 'camping_zone_sanitize_choices'
));
$wp_customize->add_control('camping_zone_scroll_top_position',array(
'type' => 'radio',
'section' => 'camping_zone_general_settings',
'choices' => array(
'Right' => __('Right','camping-zone'),
'Left' => __('Left','camping-zone'),
'Center' => __('Center','camping-zone')
),
) );
// Product Columns
$wp_customize->add_setting( 'camping_zone_products_per_row' , array(
'default' => '3',
'transport' => 'refresh',
'sanitize_callback' => 'camping_zone_sanitize_select',
) );
$wp_customize->add_control('camping_zone_products_per_row', array(
'label' => __( 'Product per row', 'camping-zone' ),
'section' => 'camping_zone_general_settings',
'type' => 'select',
'choices' => array(
'2' => '2',
'3' => '3',
'4' => '4',
),
) );
// Social Link
$wp_customize->add_section('camping_zone_social_link',array(
'title' => esc_html__('Social Links','camping-zone'),
));
$wp_customize->add_setting('camping_zone_facebook_icon',array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('camping_zone_facebook_icon',array(
'label' => esc_html__('Facebook Icon','camping-zone'),
'section' => 'camping_zone_social_link',
'setting' => 'camping_zone_facebook_icon',
'type' => 'text',
'default' => 'fab fa-facebook-f',
'description' => __('Select font awesome icons Click Here for select icon. for eg:-fab fa-facebook-f','camping-zone')
));
$wp_customize->add_setting('camping_zone_facebook_url',array(
'default' => '',
'sanitize_callback' => 'esc_url_raw'
));
$wp_customize->add_control('camping_zone_facebook_url',array(
'label' => esc_html__('Facebook Link','camping-zone'),
'section' => 'camping_zone_social_link',
'setting' => 'camping_zone_facebook_url',
'type' => 'url'
));
$wp_customize->add_setting('camping_zone_twitter_icon',array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('camping_zone_twitter_icon',array(
'label' => esc_html__('Twitter Icon','camping-zone'),
'section' => 'camping_zone_social_link',
'setting' => 'camping_zone_twitter_icon',
'type' => 'text',
'default' => 'fab fa-twitter',
'description' => __('Select font awesome icons Click Here for select icon. for eg:-fab fa-twitter','camping-zone')
));
$wp_customize->add_setting('camping_zone_twitter_url',array(
'default' => '',
'sanitize_callback' => 'esc_url_raw'
));
$wp_customize->add_control('camping_zone_twitter_url',array(
'label' => esc_html__('Twitter Link','camping-zone'),
'section' => 'camping_zone_social_link',
'setting' => 'camping_zone_twitter_url',
'type' => 'url'
));
$wp_customize->add_setting('camping_zone_intagram_icon',array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('camping_zone_intagram_icon',array(
'label' => esc_html__('Intagram Icon','camping-zone'),
'section' => 'camping_zone_social_link',
'setting' => 'camping_zone_intagram_icon',
'type' => 'text',
'default' => 'fab fa-instagram',
'description' => __('Select font awesome icons Click Here for select icon. for eg:-fab fa-instagram','camping-zone')
));
$wp_customize->add_setting('camping_zone_intagram_url',array(
'default' => '',
'sanitize_callback' => 'esc_url_raw'
));
$wp_customize->add_control('camping_zone_intagram_url',array(
'label' => esc_html__('Intagram Link','camping-zone'),
'section' => 'camping_zone_social_link',
'setting' => 'camping_zone_intagram_url',
'type' => 'url'
));
$wp_customize->add_setting('camping_zone_linkedin_icon',array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('camping_zone_linkedin_icon',array(
'label' => esc_html__('Linkedin Icon','camping-zone'),
'section' => 'camping_zone_social_link',
'setting' => 'camping_zone_linkedin_icon',
'type' => 'text',
'default' => 'fab fa-linkedin-in',
'description' => __('Select font awesome icons Click Here for select icon. for eg:-fab fa-linkedin-in','camping-zone')
));
$wp_customize->add_setting('camping_zone_linkedin_url',array(
'default' => '',
'sanitize_callback' => 'esc_url_raw'
));
$wp_customize->add_control('camping_zone_linkedin_url',array(
'label' => esc_html__('Linkedin Link','camping-zone'),
'section' => 'camping_zone_social_link',
'setting' => 'camping_zone_linkedin_url',
'type' => 'url'
));
$wp_customize->add_setting('camping_zone_pintrest_icon',array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('camping_zone_pintrest_icon',array(
'label' => esc_html__('Pinterest Icon','camping-zone'),
'section' => 'camping_zone_social_link',
'setting' => 'camping_zone_pintrest_icon',
'type' => 'text',
'default' => 'fab fa-pinterest-p',
'description' => __('Select font awesome icons Click Here for select icon. for eg:-fab fa-pinterest-p','camping-zone')
));
$wp_customize->add_setting('camping_zone_pintrest_url',array(
'default' => '',
'sanitize_callback' => 'esc_url_raw'
));
$wp_customize->add_control('camping_zone_pintrest_url',array(
'label' => esc_html__('Pinterest Link','camping-zone'),
'section' => 'camping_zone_social_link',
'setting' => 'camping_zone_pintrest_url',
'type' => 'url'
));
//Header
$wp_customize->add_section('camping_zone_header',array(
'title' => esc_html__('Header Option','camping-zone')
));
$wp_customize->add_setting('camping_zone_header_button_text',array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('camping_zone_header_button_text',array(
'label' => esc_html__('Header Button','camping-zone'),
'section' => 'camping_zone_header',
'setting' => 'camping_zone_header_button_text',
'type' => 'text'
));
$wp_customize->add_setting('camping_zone_header_button_url',array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('camping_zone_header_button_url',array(
'label' => esc_html__('Header Button Url','camping-zone'),
'section' => 'camping_zone_header',
'setting' => 'camping_zone_header_button_url',
'type' => 'url'
));
//Slider
$wp_customize->add_section('camping_zone_top_slider',array(
'title' => esc_html__('Slider Settings','camping-zone'),
));
$wp_customize->add_setting('camping_zone_slider_background_image' ,array(
'default' => '',
'sanitize_callback' => 'esc_url_raw',
));
$wp_customize->add_control(
new WP_Customize_Image_Control( $wp_customize,'camping_zone_slider_background_image' ,array(
'label' => __('Slider Background Image','camping-zone'),
'section' => 'camping_zone_top_slider',
'settings' => 'camping_zone_slider_background_image'
)));
for ( $camping_zone_count = 1; $camping_zone_count <= 3; $camping_zone_count++ ) {
$wp_customize->add_setting( 'camping_zone_top_slider_page' . $camping_zone_count, array(
'default' => '',
'sanitize_callback' => 'camping_zone_sanitize_dropdown_pages'
) );
$wp_customize->add_control( 'camping_zone_top_slider_page' . $camping_zone_count, array(
'label' => __( 'Select Slide Page', 'camping-zone' ),
'description' => __('Slider image size (1400 x 550)','camping-zone'),
'section' => 'camping_zone_top_slider',
'type' => 'dropdown-pages'
) );
$wp_customize->add_setting('camping_zone_slider_2_image' . $camping_zone_count,array(
'default' => '',
'sanitize_callback' => 'esc_url_raw',
));
$wp_customize->add_control(
new WP_Customize_Image_Control( $wp_customize,'camping_zone_slider_2_image' . $camping_zone_count,array(
'label' => __('Slider Right Image 2','camping-zone'),
'section' => 'camping_zone_top_slider',
'settings' => 'camping_zone_slider_2_image' . $camping_zone_count
)));
}
// Services
$wp_customize->add_section('camping_zone_services_section',array(
'title' => esc_html__('Services Option','camping-zone'),
));
$wp_customize->add_setting('camping_zone_services_heading',array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('camping_zone_services_heading',array(
'label' => esc_html__('Service Heading','camping-zone'),
'section' => 'camping_zone_services_section',
'setting' => 'camping_zone_services_heading',
'type' => 'text'
));
$wp_customize->add_setting('camping_zone_services_content',array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('camping_zone_services_content',array(
'label' => esc_html__('Service Content','camping-zone'),
'section' => 'camping_zone_services_section',
'setting' => 'camping_zone_services_content',
'type' => 'text'
));
$categories = get_categories();
$cat_post = array();
$cat_post[]= 'select';
$i = 0;
foreach($categories as $category){
if($i==0){
$default = $category->slug;
$i++;
}
$cat_post[$category->slug] = $category->name;
}
$wp_customize->add_setting('camping_zone_services_sec_category',array(
'default' => 'select',
'sanitize_callback' => 'camping_zone_sanitize_select',
));
$wp_customize->add_control('camping_zone_services_sec_category',array(
'type' => 'select',
'choices' => $cat_post,
'label' => __('Select Category to display services','camping-zone'),
'section' => 'camping_zone_services_section',
));
// Post Settings
$wp_customize->add_section('camping_zone_post_settings',array(
'title' => esc_html__('Post Settings','camping-zone'),
'priority' =>40,
));
$wp_customize->add_setting('camping_zone_post_page_title',array(
'sanitize_callback' => 'camping_zone_sanitize_checkbox',
'default' => 1,
));
$wp_customize->add_control('camping_zone_post_page_title',array(
'type' => 'checkbox',
'label' => esc_html__('Enable Post Page Title', 'camping-zone'),
'section' => 'camping_zone_post_settings',
'description' => esc_html__('Check this box to enable title on post page.', 'camping-zone'),
));
$wp_customize->add_setting('camping_zone_post_page_meta',array(
'sanitize_callback' => 'camping_zone_sanitize_checkbox',
'default' => 1,
));
$wp_customize->add_control('camping_zone_post_page_meta',array(
'type' => 'checkbox',
'label' => esc_html__('Enable Post Page Meta', 'camping-zone'),
'section' => 'camping_zone_post_settings',
'description' => esc_html__('Check this box to enable meta on post page.', 'camping-zone'),
));
$wp_customize->add_setting('camping_zone_post_page_thumb',array(
'sanitize_callback' => 'camping_zone_sanitize_checkbox',
'default' => 1,
));
$wp_customize->add_control('camping_zone_post_page_thumb',array(
'type' => 'checkbox',
'label' => esc_html__('Enable Post Page Thumbnail', 'camping-zone'),
'section' => 'camping_zone_post_settings',
'description' => esc_html__('Check this box to enable thumbnail on post page.', 'camping-zone'),
));
$wp_customize->add_setting('camping_zone_post_page_content',array(
'sanitize_callback' => 'camping_zone_sanitize_checkbox',
'default' => 1,
));
$wp_customize->add_control('camping_zone_post_page_content',array(
'type' => 'checkbox',
'label' => esc_html__('Enable Post Page Content', 'camping-zone'),
'section' => 'camping_zone_post_settings',
'description' => esc_html__('Check this box to enable content on post page.', 'camping-zone'),
));
$wp_customize->add_setting('camping_zone_single_post_page_content',array(
'sanitize_callback' => 'camping_zone_sanitize_checkbox',
'default' => 1,
));
$wp_customize->add_control('camping_zone_single_post_page_content',array(
'type' => 'checkbox',
'label' => esc_html__('Enable Single Post Page Content', 'camping-zone'),
'section' => 'camping_zone_post_settings',
'description' => esc_html__('Check this box to enable content on single post page.', 'camping-zone'),
));
// Footer
$wp_customize->add_section('camping_zone_site_footer_section', array(
'title' => esc_html__('Footer', 'camping-zone'),
));
$wp_customize->add_setting('camping_zone_footer_widget_content_alignment',array(
'default' => 'Left',
'transport' => 'refresh',
'sanitize_callback' => 'camping_zone_sanitize_choices'
));
$wp_customize->add_control('camping_zone_footer_widget_content_alignment',array(
'type' => 'select',
'label' => __('Footer Widget Content Alignment','camping-zone'),
'section' => 'camping_zone_site_footer_section',
'choices' => array(
'Left' => __('Left','camping-zone'),
'Center' => __('Center','camping-zone'),
'Right' => __('Right','camping-zone')
),
) );
$wp_customize->add_setting('camping_zone_show_hide_copyright',array(
'default' => true,
'sanitize_callback' => 'camping_zone_sanitize_checkbox'
));
$wp_customize->add_control('camping_zone_show_hide_copyright',array(
'type' => 'checkbox',
'label' => __('Show / Hide Copyright','camping-zone'),
'section' => 'camping_zone_site_footer_section',
));
$wp_customize->add_setting('camping_zone_footer_text_setting', array(
'sanitize_callback' => 'sanitize_text_field',
));
$wp_customize->add_control('camping_zone_footer_text_setting', array(
'label' => __('Replace the footer text', 'camping-zone'),
'section' => 'camping_zone_site_footer_section',
'type' => 'text',
));
$wp_customize->add_setting('camping_zone_copyright_content_alignment',array(
'default' => 'Center',
'transport' => 'refresh',
'sanitize_callback' => 'camping_zone_sanitize_choices'
));
$wp_customize->add_control('camping_zone_copyright_content_alignment',array(
'type' => 'select',
'label' => __('Copyright Content Alignment','camping-zone'),
'section' => 'camping_zone_site_footer_section',
'choices' => array(
'Left' => __('Left','camping-zone'),
'Center' => __('Center','camping-zone'),
'Right' => __('Right','camping-zone')
),
) );
// Pro Version
$wp_customize->add_setting( 'pro_version_footer_setting', array(
'sanitize_callback' => 'Camping_Zone_sanitize_custom_control'
));
$wp_customize->add_control( new Camping_Zone_Customize_Pro_Version ( $wp_customize,'pro_version_footer_setting', array(
'section' => 'camping_zone_site_footer_section',
'type' => 'pro_options',
'label' => esc_html__( 'Customizer Options', 'camping-zone' ),
'description' => esc_url( CAMPING_ZONE_URL ),
'priority' => 100
)));
}
add_action('customize_register', 'camping_zone_customize_register');
/**
* Render the site title for the selective refresh partial.
*
* @return void
*/
function camping_zone_customize_partial_blogname(){
bloginfo('name');
}
/**
* Render the site tagline for the selective refresh partial.
*
* @return void
*/
function camping_zone_customize_partial_blogdescription(){
bloginfo('description');
}
/**
* Binds JS handlers to make Theme Customizer preview reload changes asynchronously.
*/
function camping_zone_customize_preview_js(){
wp_enqueue_script('camping-zone-customizer', esc_url(get_template_directory_uri()) . '/assets/js/customizer.js', array('customize-preview'), '20151215', true);
}
add_action('customize_preview_init', 'camping_zone_customize_preview_js');
/*
** Load dynamic logic for the customizer controls area.
*/
function camping_zone_panels_js() {
wp_enqueue_style( 'camping-zone-customizer-layout-css', get_theme_file_uri( '/assets/css/customizer-layout.css' ) );
wp_enqueue_script( 'camping-zone-customize-layout', get_theme_file_uri( '/assets/js/customize-layout.js' ), array(), '1.2', true );
}
add_action( 'customize_controls_enqueue_scripts', 'camping_zone_panels_js' );