=') ) { $wp_customize->get_section( 'static_front_page' )->title = __( 'Static Front Page', 'architecture-construction' ); } /* Option list of all post */ $architecture_construction_options_posts = array(); $architecture_construction_options_posts_obj = get_posts('posts_per_page=-1'); $architecture_construction_options_posts[''] = esc_html__( 'Choose Post', 'architecture-construction' ); foreach ( $architecture_construction_options_posts_obj as $architecture_construction_posts ) { $architecture_construction_options_posts[$architecture_construction_posts->ID] = $architecture_construction_posts->post_title; } /* Option list of all categories */ $architecture_construction_args = array( 'type' => 'post', 'orderby' => 'name', 'order' => 'ASC', 'hide_empty' => 1, 'hierarchical' => 1, 'taxonomy' => 'category' ); $architecture_construction_option_categories = array(); $architecture_construction_category_lists = get_categories( $architecture_construction_args ); $architecture_construction_option_categories[''] = esc_html__( 'Choose Category', 'architecture-construction' ); foreach( $architecture_construction_category_lists as $architecture_construction_category ){ $architecture_construction_option_categories[$architecture_construction_category->term_id] = $architecture_construction_category->name; } /** Default Settings */ $wp_customize->add_panel( 'wp_default_panel', array( 'priority' => 10, 'capability' => 'edit_theme_options', 'theme_supports' => '', 'title' => esc_html__( 'Default Settings', 'architecture-construction' ), 'description' => esc_html__( 'Default section provided by wordpress customizer.', 'architecture-construction' ), ) ); $wp_customize->get_section( 'title_tagline' )->panel = 'wp_default_panel'; $wp_customize->get_section( 'colors' )->panel = 'wp_default_panel'; $wp_customize->get_section( 'header_image' )->panel = 'wp_default_panel'; $wp_customize->get_section( 'background_image' )->panel = 'wp_default_panel'; $wp_customize->get_section( 'static_front_page' )->panel = 'wp_default_panel'; $wp_customize->get_setting( 'blogname' )->transport = 'postMessage'; $wp_customize->get_setting( 'blogdescription' )->transport = 'postMessage'; $wp_customize->get_setting( 'header_textcolor' )->transport = 'postMessage'; /** Default Settings Ends */ /** Site Title control */ $wp_customize->add_setting( 'header_site_title', array( 'default' => true, 'sanitize_callback' => 'architecture_construction_sanitize_checkbox', ) ); $wp_customize->add_control( 'header_site_title', array( 'label' => __( 'Show / Hide Site Title', 'architecture-construction' ), 'section' => 'title_tagline', 'type' => 'checkbox', ) ); /** Tagline control */ $wp_customize->add_setting( 'header_tagline', array( 'default' => false, 'sanitize_callback' => 'architecture_construction_sanitize_checkbox', ) ); $wp_customize->add_control( 'header_tagline', array( 'label' => __( 'Show / Hide Tagline', 'architecture-construction' ), 'section' => 'title_tagline', 'type' => 'checkbox', ) ); $wp_customize->add_setting('logo_width', array( 'sanitize_callback' => 'absint', )); // Add a control for logo width $wp_customize->add_control('logo_width', array( 'label' => __('Logo Width', 'architecture-construction'), 'section' => 'title_tagline', 'type' => 'number', 'input_attrs' => array( 'min' => '50', 'max' => '500', 'step' => '5', ), 'default' => '100', )); $wp_customize->add_setting( 'architecture_construction_site_title_size', array( 'default' => 30, // Default font size in pixels 'sanitize_callback' => 'absint', // Sanitize the input as a positive integer ) ); // Add control for site title size $wp_customize->add_control( 'architecture_construction_site_title_size', array( 'type' => 'number', 'section' => 'title_tagline', // You can change this section to your preferred section 'label' => __( 'Site Title Font Size (px)', 'architecture-construction' ), 'input_attrs' => array( 'min' => 10, 'max' => 100, 'step' => 1, ), ) ); /** Post Settings */ $wp_customize->add_section( 'architecture_construction_post_settings', array( 'title' => esc_html__( 'Post Settings', 'architecture-construction' ), 'priority' => 20, 'capability' => 'edit_theme_options', ) ); // Excerpt Length $wp_customize->add_section( 'architecture_construction_post_excerpt_length', array( 'title' => __('Excerpt Length', 'architecture-construction'), 'panel' => 'theme_option_panel' ) ); $wp_customize->add_setting( 'architecture_construction_post_excerpt_length', array( 'default' => '50', 'sanitize_callback' => 'architecture_construction_sanitize_number_range', ) ); $wp_customize->add_control( 'architecture_construction_post_excerpt_length', array( 'label' => esc_html__( 'Excerpt Length', 'architecture-construction' ), 'section' => 'architecture_construction_post_settings', 'type' => 'number', 'input_attrs' => array( 'min' => 1, 'max' => 200, 'style' => 'width: 100%;' ), ) ); /** Post Heading control */ $wp_customize->add_setting( 'architecture_construction_post_heading_setting', array( 'default' => true, 'sanitize_callback' => 'architecture_construction_sanitize_checkbox', ) ); $wp_customize->add_control( 'architecture_construction_post_heading_setting', array( 'label' => __( 'Show / Hide Post Heading', 'architecture-construction' ), 'section' => 'architecture_construction_post_settings', 'type' => 'checkbox', ) ); /** Post Meta control */ $wp_customize->add_setting( 'architecture_construction_post_meta_setting', array( 'default' => true, 'sanitize_callback' => 'architecture_construction_sanitize_checkbox', ) ); $wp_customize->add_control( 'architecture_construction_post_meta_setting', array( 'label' => __( 'Show / Hide Post Meta', 'architecture-construction' ), 'section' => 'architecture_construction_post_settings', 'type' => 'checkbox', ) ); /** Post Image control */ $wp_customize->add_setting( 'architecture_construction_post_image_setting', array( 'default' => true, 'sanitize_callback' => 'architecture_construction_sanitize_checkbox', ) ); $wp_customize->add_control( 'architecture_construction_post_image_setting', array( 'label' => __( 'Show / Hide Post Image', 'architecture-construction' ), 'section' => 'architecture_construction_post_settings', 'type' => 'checkbox', ) ); /** Post Content control */ $wp_customize->add_setting( 'architecture_construction_post_content_setting', array( 'default' => true, 'sanitize_callback' => 'architecture_construction_sanitize_checkbox', ) ); $wp_customize->add_control( 'architecture_construction_post_content_setting', array( 'label' => __( 'Show / Hide Post Content', 'architecture-construction' ), 'section' => 'architecture_construction_post_settings', 'type' => 'checkbox', ) ); /** Post Settings Ends */ /** Single Post Settings */ $wp_customize->add_section( 'architecture_construction_single_post_settings', array( 'title' => esc_html__( 'Single Post Settings', 'architecture-construction' ), 'priority' => 20, 'capability' => 'edit_theme_options', ) ); /** Single Post Meta control */ $wp_customize->add_setting( 'architecture_construction_single_post_meta_setting', array( 'default' => true, 'sanitize_callback' => 'architecture_construction_sanitize_checkbox', ) ); $wp_customize->add_control( 'architecture_construction_single_post_meta_setting', array( 'label' => __( 'Show / Hide Single Post Meta', 'architecture-construction' ), 'section' => 'architecture_construction_single_post_settings', 'type' => 'checkbox', ) ); /** Single Post Content control */ $wp_customize->add_setting( 'architecture_construction_single_post_content_setting', array( 'default' => true, 'sanitize_callback' => 'architecture_construction_sanitize_checkbox', ) ); $wp_customize->add_control( 'architecture_construction_single_post_content_setting', array( 'label' => __( 'Show / Hide Single Post Content', 'architecture-construction' ), 'section' => 'architecture_construction_single_post_settings', 'type' => 'checkbox', ) ); /** Single Post Settings Ends */ /** General Settings */ $wp_customize->add_section( 'architecture_construction_general_settings', array( 'title' => esc_html__( 'General Settings', 'architecture-construction' ), 'priority' => 20, 'capability' => 'edit_theme_options', ) ); /** Preloader control */ $wp_customize->add_setting( 'architecture_construction_preloader_setting', array( 'default' => false, 'sanitize_callback' => 'architecture_construction_sanitize_checkbox', ) ); $wp_customize->add_control( 'architecture_construction_preloader_setting', array( 'label' => __( 'Show / Hide Preloader', 'architecture-construction' ), 'section' => 'architecture_construction_general_settings', 'type' => 'checkbox', ) ); $wp_customize->add_setting('sidebar_text_align', array( 'default' => 'left', 'sanitize_callback' => 'sanitize_text_field', )); // Add Sidebar Text Align Control $wp_customize->add_control('sidebar_text_align_control', array( 'label' => __('Sidebar Text Align', 'architecture-construction'), 'section' => 'architecture_construction_general_settings`', 'settings' => 'architecture_construction_sidebar_text_align', 'type' => 'select', 'choices' => array( 'left' => __('Left', 'architecture-construction'), 'center' => __('Center', 'architecture-construction'), ), )); /** Scroll To Top control */ $wp_customize->add_setting( 'architecture_construction_scroll_to_top', array( 'default' => true, 'sanitize_callback' => 'architecture_construction_sanitize_checkbox', ) ); $wp_customize->add_control( 'architecture_construction_scroll_to_top', array( 'label' => __( 'Show / Hide Scroll To Top', 'architecture-construction' ), 'section' => 'architecture_construction_general_settings', 'type' => 'checkbox', ) ); $wp_customize->add_setting('architecture_construction_scroll_icon',array( 'default' => 'fas fa-arrow-up', 'sanitize_callback' => 'sanitize_text_field' )); $wp_customize->add_control(new Architecture_Construction_Changeable_Icon( $wp_customize,'architecture_construction_scroll_icon',array( 'label' => __('Scroll Icon','architecture-construction'), 'transport' => 'refresh', 'section' => 'architecture_construction_general_settings', 'type' => 'icon' ))); /** Sticky Header control */ $wp_customize->add_setting( 'architecture_construction_sticky_header', array( 'default' => false, 'sanitize_callback' => 'architecture_construction_sanitize_checkbox', ) ); $wp_customize->add_control( 'architecture_construction_sticky_header', array( 'label' => __( 'Show Sticky Header', 'architecture-construction' ), 'section' => 'architecture_construction_general_settings', 'type' => 'checkbox', ) ); /** General Settings Ends */ /** Header Section Settings */ $wp_customize->add_section( 'architecture_construction_header_section_settings', array( 'title' => esc_html__( 'Header Section Settings', 'architecture-construction' ), 'priority' => 30, 'capability' => 'edit_theme_options', ) ); /** Header Section control */ $wp_customize->add_setting( 'architecture_construction_header_setting', array( 'default' => false , 'sanitize_callback' => 'architecture_construction_sanitize_checkbox', ) ); $wp_customize->add_control( 'architecture_construction_header_setting', array( 'label' => __( 'Show Header', 'architecture-construction' ), 'section' => 'architecture_construction_header_section_settings', 'type' => 'checkbox', ) ); /** Header Text */ $wp_customize->add_setting( 'architecture_construction_header_line', array( 'default' => '', 'sanitize_callback' => 'sanitize_text_field', 'transport' => 'refresh' ) ); $wp_customize->add_control( 'architecture_construction_header_line', array( 'label' => esc_html__( 'Add Header Text', 'architecture-construction' ), 'section' => 'architecture_construction_header_section_settings', 'type' => 'text', ) ); /** Email */ $wp_customize->add_setting( 'architecture_construction_header_email', array( 'default' => '', 'sanitize_callback' => 'sanitize_text_field', 'transport' => 'refresh' ) ); $wp_customize->add_control( 'architecture_construction_header_email', array( 'label' => esc_html__( 'Add Email', 'architecture-construction' ), 'section' => 'architecture_construction_header_section_settings', 'type' => 'text', ) ); $wp_customize->add_setting('architecture_construction_email_icon',array( 'default' => 'fas fa-envelope', 'sanitize_callback' => 'sanitize_text_field' )); $wp_customize->add_control(new Architecture_Construction_Changeable_Icon( $wp_customize,'architecture_construction_email_icon',array( 'label' => __('Mail Icon','architecture-construction'), 'transport' => 'refresh', 'section' => 'architecture_construction_header_section_settings', 'type' => 'icon' ))); /** Phone */ $wp_customize->add_setting( 'architecture_construction_header_phone', array( 'default' => '', 'sanitize_callback' => 'sanitize_text_field', 'transport' => 'refresh' ) ); $wp_customize->add_control( 'architecture_construction_header_phone', array( 'label' => esc_html__( 'Add Phone', 'architecture-construction' ), 'section' => 'architecture_construction_header_section_settings', 'type' => 'text', ) ); $wp_customize->add_setting('architecture_construction_phone_icon',array( 'default' => 'fas fa-phone-alt', 'sanitize_callback' => 'sanitize_text_field' )); $wp_customize->add_control(new Architecture_Construction_Changeable_Icon( $wp_customize,'architecture_construction_phone_icon',array( 'label' => __('Phone Icon','architecture-construction'), 'transport' => 'refresh', 'section' => 'architecture_construction_header_section_settings', 'type' => 'icon' ))); /** Location */ $wp_customize->add_setting( 'architecture_construction_header_location', array( 'default' => '', 'sanitize_callback' => 'sanitize_text_field', 'transport' => 'refresh' ) ); $wp_customize->add_control( 'architecture_construction_header_location', array( 'label' => esc_html__( 'Add Location', 'architecture-construction' ), 'section' => 'architecture_construction_header_section_settings', 'type' => 'text', ) ); $wp_customize->add_setting('architecture_construction_Location_icon',array( 'default' => 'fas fa-map-marker-alt', 'sanitize_callback' => 'sanitize_text_field' )); $wp_customize->add_control(new Architecture_Construction_Changeable_Icon( $wp_customize,'architecture_construction_Location_icon',array( 'label' => __('Location Icon','architecture-construction'), 'transport' => 'refresh', 'section' => 'architecture_construction_header_section_settings', 'type' => 'icon' ))); /** Appointment Button */ $wp_customize->add_setting( 'architecture_construction_header_btn_text', array( 'default' => '', 'sanitize_callback' => 'sanitize_text_field', 'transport' => 'refresh' ) ); $wp_customize->add_control( 'architecture_construction_header_btn_text', array( 'label' => esc_html__( 'Add Button Text', 'architecture-construction' ), 'section' => 'architecture_construction_header_section_settings', 'type' => 'text', ) ); /** Appointment Button */ $wp_customize->add_setting( 'architecture_construction_header_btn_url', array( 'default' => '', 'sanitize_callback' => 'esc_url_raw', 'transport' => 'refresh' ) ); $wp_customize->add_control( 'architecture_construction_header_btn_url', array( 'label' => esc_html__( 'Add Button URL', 'architecture-construction' ), 'section' => 'architecture_construction_header_section_settings', 'type' => 'url', ) ); /** Header Section Settings End */ /** Social Section Settings */ $wp_customize->add_section( 'architecture_construction_social_section_settings', array( 'title' => esc_html__( 'Social Media Section Settings', 'architecture-construction' ), 'priority' => 30, 'capability' => 'edit_theme_options', ) ); /** Social Section control */ $wp_customize->add_setting( 'architecture_construction_social_icon_setting', array( 'default' => true , 'sanitize_callback' => 'architecture_construction_sanitize_checkbox', ) ); $wp_customize->add_control( 'architecture_construction_social_icon_setting', array( 'label' => __( 'Show Social Icon', 'architecture-construction' ), 'section' => 'architecture_construction_social_section_settings', 'type' => 'checkbox', ) ); /** Social Link 1 */ $wp_customize->add_setting( 'architecture_construction_social_link_1', array( 'default' => '', 'sanitize_callback' => 'esc_url_raw', 'transport' => 'refresh' ) ); $wp_customize->add_control( 'architecture_construction_social_link_1', array( 'label' => esc_html__( 'Add Facebook Link', 'architecture-construction' ), 'section' => 'architecture_construction_social_section_settings', 'type' => 'url', ) ); /** Social Link 2 */ $wp_customize->add_setting( 'architecture_construction_social_link_2', array( 'default' => '', 'sanitize_callback' => 'esc_url_raw', 'transport' => 'refresh' ) ); $wp_customize->add_control( 'architecture_construction_social_link_2', array( 'label' => esc_html__( 'Add Twitter Link', 'architecture-construction' ), 'section' => 'architecture_construction_social_section_settings', 'type' => 'url', ) ); /** Social Link 3 */ $wp_customize->add_setting( 'architecture_construction_social_link_3', array( 'default' => '', 'sanitize_callback' => 'esc_url_raw', 'transport' => 'refresh' ) ); $wp_customize->add_control( 'architecture_construction_social_link_3', array( 'label' => esc_html__( 'Add Instagram Link', 'architecture-construction' ), 'section' => 'architecture_construction_social_section_settings', 'type' => 'url', ) ); /** Social Link 4 */ $wp_customize->add_setting( 'architecture_construction_social_link_4', array( 'default' => '', 'sanitize_callback' => 'esc_url_raw', 'transport' => 'refresh' ) ); $wp_customize->add_control( 'architecture_construction_social_link_4', array( 'label' => esc_html__( 'Add Pintrest Link', 'architecture-construction' ), 'section' => 'architecture_construction_social_section_settings', 'type' => 'url', ) ); /** Social Section Settings End */ /** Home Page Settings */ $wp_customize->add_panel( 'architecture_construction_home_page_settings', array( 'priority' => 40, 'capability' => 'edit_theme_options', 'title' => esc_html__( 'Home Page Settings', 'architecture-construction' ), 'description' => esc_html__( 'Customize Home Page Settings', 'architecture-construction' ), ) ); /** Slider Section Settings */ $wp_customize->add_section( 'architecture_construction_slider_section_settings', array( 'title' => esc_html__( 'Slider Section Settings', 'architecture-construction' ), 'priority' => 30, 'capability' => 'edit_theme_options', 'panel' => 'architecture_construction_home_page_settings', ) ); /** Slider Section control */ $wp_customize->add_setting( 'architecture_construction_slider_setting', array( 'default' => true , 'sanitize_callback' => 'architecture_construction_sanitize_checkbox', ) ); $wp_customize->add_control( 'architecture_construction_slider_setting', array( 'label' => __( 'Show Slider', 'architecture-construction' ), 'section' => 'architecture_construction_slider_section_settings', 'type' => 'checkbox', ) ); $categories = get_categories(); $cat_posts = array(); $i = 0; $cat_posts[]='Select'; foreach($categories as $category){ if($i==0){ $default = $category->slug; $i++; } $cat_posts[$category->slug] = $category->name; } $wp_customize->add_setting( 'architecture_construction_blog_slide_category', array( 'default' => 'select', 'sanitize_callback' => 'architecture_construction_sanitize_choices', ) ); $wp_customize->add_control( 'architecture_construction_blog_slide_category', array( 'type' => 'select', 'choices' => $cat_posts, 'label' => __('Select Category to display Latest Post','architecture-construction'), 'section' => 'architecture_construction_slider_section_settings', ) ); /** Slider Section control */ $wp_customize->add_setting( 'architecture_construction_slider_button_setting', array( 'default' => true , 'sanitize_callback' => 'architecture_construction_sanitize_checkbox', ) ); $wp_customize->add_control( 'architecture_construction_slider_button_setting', array( 'label' => __( 'Show Slider Button', 'architecture-construction' ), 'section' => 'architecture_construction_slider_section_settings', 'type' => 'checkbox', ) ); $wp_customize->add_setting('slider_text_alignment', array( 'default' => 'right', 'transport' => 'refresh', 'sanitize_callback' => 'architecture_construction_sanitize_text_alignment', )); // Add Text Alignment Control $wp_customize->add_control('slider_text_alignment_control', array( 'label' => __('Slider Text Alignment', 'architecture-construction'), 'section' => 'architecture_construction_slider_section_settings', 'settings' => 'slider_text_alignment', 'type' => 'radio', 'choices' => array( 'left' => __('Left', 'architecture-construction'), 'center' => __('Center', 'architecture-construction'), 'right' => __('Right', 'architecture-construction'), ), )); /** About Section Settings */ $wp_customize->add_section( 'architecture_construction_section_featured_about', array( 'title' => __( 'About Us Section', 'architecture-construction' ), 'priority' => 110, 'capability' => 'edit_theme_options', 'panel' => 'architecture_construction_home_page_settings', ) ); /** About Section control */ $wp_customize->add_setting( 'architecture_construction_about_setting', array( 'default' => true , 'sanitize_callback' => 'architecture_construction_sanitize_checkbox', ) ); $wp_customize->add_control( 'architecture_construction_about_setting', array( 'label' => __( 'Show About', 'architecture-construction' ), 'section' => 'architecture_construction_section_featured_about', 'type' => 'checkbox', ) ); // Section Text $wp_customize->add_setting('architecture_construction_featured_mission_section_text', array( 'default' => '', 'type' => 'theme_mod', 'capability' => 'edit_theme_options', 'sanitize_callback' => 'sanitize_text_field' ) ); $wp_customize->add_control('architecture_construction_featured_mission_section_text', array( 'label' => __('Section Text', 'architecture-construction'), 'section' => 'architecture_construction_section_featured_about', 'settings' => 'architecture_construction_featured_mission_section_text', 'type' => 'text' ) ); // Section Title $wp_customize->add_setting('architecture_construction_featured_mission_section_title', array( 'default' => '', 'type' => 'theme_mod', 'capability' => 'edit_theme_options', 'sanitize_callback' => 'sanitize_text_field' ) ); $wp_customize->add_control('architecture_construction_featured_mission_section_title', array( 'label' => __('Section Title', 'architecture-construction'), 'section' => 'architecture_construction_section_featured_about', 'settings' => 'architecture_construction_featured_mission_section_title', 'type' => 'text' ) ); // Items $wp_customize->add_setting('architecture_construction_number_of_featured_mission_items', array( 'default' => '', 'type' => 'theme_mod', 'capability' => 'edit_theme_options', 'sanitize_callback' => 'architecture_construction_sanitize_number_range' ) ); $wp_customize->add_control('architecture_construction_number_of_featured_mission_items', array( 'label' => __('Items (Max: 5)', 'architecture-construction'), 'section' => 'architecture_construction_section_featured_about', 'settings' => 'architecture_construction_number_of_featured_mission_items', 'type' => 'number', 'input_attrs' => array( 'min' => 1, 'max' => 5, 'step' => 1, ), ) ); $architecture_construction_number_of_featured_mission_items = get_theme_mod( 'architecture_construction_number_of_featured_mission_items' ); for( $i=1; $i<=$architecture_construction_number_of_featured_mission_items; $i++ ) { // Section Tab $wp_customize->add_setting('architecture_construction_featured_mission_section_tab_'.$i, array( 'type' => 'theme_mod', 'capability' => 'edit_theme_options', 'sanitize_callback' => 'sanitize_text_field' ) ); $wp_customize->add_control('architecture_construction_featured_mission_section_tab_'.$i, array( 'label' => __('Tab #', 'architecture-construction').$i, 'section' => 'architecture_construction_section_featured_about', 'settings' => 'architecture_construction_featured_mission_section_tab_'.$i, 'type' => 'text' ) ); // Section Tab Icon $wp_customize->add_setting('architecture_construction_featured_mission_section_tab_icon_'.$i, array( 'type' => 'theme_mod', 'capability' => 'edit_theme_options', 'sanitize_callback' => 'sanitize_text_field' ) ); $wp_customize->add_control('architecture_construction_featured_mission_section_tab_icon_'.$i, array( 'label' => __('Tab Icon #', 'architecture-construction').$i, 'section' => 'architecture_construction_section_featured_about', 'settings' => 'architecture_construction_featured_mission_section_tab_icon_'.$i, 'type' => 'text' ) ); // Post $wp_customize->add_setting('architecture_construction_featured_mission_post_'.$i, array( 'type' => 'theme_mod', 'capability' => 'edit_theme_options', 'sanitize_callback' => 'architecture_construction_dropdown_pages' ) ); $wp_customize->add_control('architecture_construction_featured_mission_post_'.$i, array( 'label' => __('Page #', 'architecture-construction').$i, 'section' => 'architecture_construction_section_featured_about', 'settings' => 'architecture_construction_featured_mission_post_'.$i, 'type' => 'dropdown-pages', ) ); } // Setting for Work Tab Title $wp_customize->add_setting('architecture_construction_work_tab_title', array( 'default' => __('How It Works', 'architecture-construction'), 'sanitize_callback' => 'sanitize_text_field', )); $wp_customize->add_control('architecture_construction_work_tab_title', array( 'label' => __('Work Tab Title', 'architecture-construction'), 'section' => 'architecture_construction_section_featured_about', 'settings' => 'architecture_construction_work_tab_title', 'type' => 'text', )); // Setting for Work Tab Steps for ($i = 1; $i <= 3; $i++) { $wp_customize->add_setting('architecture_construction_work_tab_step_' . $i, array( 'default' => '', 'sanitize_callback' => 'sanitize_text_field', )); $wp_customize->add_control('architecture_construction_work_tab_step_' . $i, array( 'label' => sprintf(__('Step %d', 'architecture-construction'), $i), 'section' => 'architecture_construction_section_featured_about', 'settings' => 'architecture_construction_work_tab_step_' . $i, 'type' => 'text', )); } add_action('customize_register', 'architecture_construction_customize_register'); /** Home Page Settings Ends */ /** Footer Section */ $wp_customize->add_section( 'architecture_construction_footer_section', array( 'title' => __( 'Footer Settings', 'architecture-construction' ), 'priority' => 70, ) ); /** Copyright Text */ $wp_customize->add_setting( 'architecture_construction_footer_copyright_text', array( 'default' => '', 'sanitize_callback' => 'sanitize_text_field', ) ); $wp_customize->add_control( 'architecture_construction_footer_copyright_text', array( 'label' => __( 'Copyright Info', 'architecture-construction' ), 'section' => 'architecture_construction_footer_section', 'type' => 'text', ) ); $wp_customize->add_setting('footer_background_image', array( 'default' => '', 'capability' => 'edit_theme_options', 'sanitize_callback' => 'absint', ) ); $wp_customize->add_control( new WP_Customize_Cropped_Image_Control($wp_customize, 'footer_background_image', array( 'label' => esc_html__('Footer Background Image', 'architecture-construction'), 'description' => sprintf(esc_html__('Recommended Size %1$s px X %2$s px', 'architecture-construction'), 1024, 800), 'section' => 'architecture_construction_footer_section', 'width' => 1024, 'height' => 800, 'flex_width' => true, 'flex_height' => true, 'priority' => 100, ) ) ); /* Footer Background Color*/ $wp_customize->add_setting( 'footer_background_color', array( 'default' => '', 'sanitize_callback' => 'sanitize_hex_color', ) ); $wp_customize->add_control( new WP_Customize_Color_Control( $wp_customize, 'footer_background_color', array( 'label' => __('Footer Widget Area Background Color', 'architecture-construction'), 'section' => 'architecture_construction_footer_section', 'type' => 'color', ) ) ); // 404 PAGE SETTINGS $wp_customize->add_section( 'architecture_construction_404_section', array( 'title' => __( '404 Page Settings', 'architecture-construction' ), 'priority' => 70, ) ); $wp_customize->add_setting('404_page_image', array( 'default' => '', 'transport' => 'refresh', 'sanitize_callback' => 'esc_url_raw', // Sanitize as URL )); $wp_customize->add_control(new WP_Customize_Image_Control($wp_customize, '404_page_image', array( 'label' => __('404 Page Image', 'architecture-construction'), 'section' => 'architecture_construction_404_section', 'settings' => '404_page_image', ))); $wp_customize->add_setting('404_pagefirst_header', array( 'default' => __('404', 'architecture-construction'), 'transport' => 'refresh', 'sanitize_callback' => 'sanitize_text_field', // Sanitize as text field )); $wp_customize->add_control('404_pagefirst_header', array( 'type' => 'text', 'label' => __('Heading', 'architecture-construction'), 'section' => 'architecture_construction_404_section', )); // Setting for 404 page header $wp_customize->add_setting('404_page_header', array( 'default' => __('Sorry, that page can\'t be found!', 'architecture-construction'), 'transport' => 'refresh', 'sanitize_callback' => 'sanitize_text_field', // Sanitize as text field )); $wp_customize->add_control('404_page_header', array( 'type' => 'text', 'label' => __('Heading', 'architecture-construction'), 'section' => 'architecture_construction_404_section', )); /** Footer control END */ function architecture_construction_sanitize_choices( $input, $setting ) { global $wp_customize; $control = $wp_customize->get_control( $setting->id ); if ( array_key_exists( $input, $control->choices ) ) { return $input; } else { return $setting->default; } } if ( ! function_exists( 'architecture_construction_sanitize_number_range' ) ) : /** * Sanitize number range. * */ function architecture_construction_sanitize_number_range( $input, $setting ) { // Ensure input is an absolute integer. $input = absint( $input ); // Get the input attributes associated with the setting. $atts = $setting->manager->get_control( $setting->id )->input_attrs; // Get min. $min = ( isset( $atts['min'] ) ? $atts['min'] : $input ); // Get max. $max = ( isset( $atts['max'] ) ? $atts['max'] : $input ); // Get Step. $step = ( isset( $atts['step'] ) ? $atts['step'] : 1 ); // If the input is within the valid range, return it; otherwise, return the default. return ( $min <= $input && $input <= $max && is_int( $input / $step ) ? $input : $setting->default ); } endif; if ( ! function_exists( 'architecture_construction_dropdown_pages' ) ) : function architecture_construction_dropdown_pages( $page_id, $setting ) { // Ensure $input is an absolute integer. $page_id = absint( $page_id ); // If $page_id is an ID of a published page, return it; otherwise, return the default. return ( 'publish' == get_post_status( $page_id ) ? $page_id : $setting->default ); } endif; } add_action( 'customize_register', 'architecture_construction_customize_register' ); endif; /** * Binds JS handlers to make Theme Customizer preview reload changes asynchronously. */ function architecture_construction_customize_preview_js() { // Use minified libraries if SCRIPT_DEBUG is false $architecture_construction_build = ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ) ? '/build' : ''; $architecture_construction_suffix = ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ) ? '' : '.min'; wp_enqueue_script( 'architecture_construction_customizer', get_template_directory_uri() . '/js' . $architecture_construction_build . '/customizer' . $architecture_construction_suffix . '.js', array( 'customize-preview' ), '20130508', true ); } add_action( 'customize_preview_init', 'architecture_construction_customize_preview_js' );