Current path: home/webdevt/www/cryptoimpot.fr/wp-content/themes/spacious/inc/customizer/
?? Go up: /home/webdevt/www/cryptoimpot.fr/wp-content/themes/spacious/inc
<?php
/**
* Spacious customizer class for theme customize options.
*
* Class Spacious_Customizer
*
* @package ThemeGrill
* @subpackage Spacious
* @since Spacious 1.9.0
*/
// Exit if accessed directly.
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
// Include the customizer framework files.
require( dirname( __FILE__ ) . '/core/class-spacious-customizer-framework.php' );
require( dirname( __FILE__ ) . '/core/class-spacious-customize-base-option.php' );
/**
* Spacious customizer class.
*
* Class Spacious_Customizer
*/
class Spacious_Customizer {
/**
* Customizer setup constructor.
*
* Spacious_Customizer constructor.
*/
public function __construct() {
// Include the required files for Customize option.
add_action( 'customize_register', array( $this, 'customize_register' ), 12 );
// Include the required files for Customize option.
add_action( 'customize_register', array( $this, 'customize_options_file_include' ), 1 );
}
/**
* Include the required files for extending the custom Customize controls.
*
* @param WP_Customize_Manager $wp_customize Theme Customizer object.
*/
public function customize_custom_panels_sections_includes( $wp_customize ) {
// Include the required customizer nested panels and sections files.
require SPACIOUS_CUSTOMIZER_DIR . '/extend-customizer/class-spacious-upsell-section.php';
}
/**
* Include the required files for extending the custom Customize controls.
*
* @param WP_Customize_Manager $wp_customize Theme Customizer object.
*/
public function customize_register( $wp_customize ) {
// Override default.
require SPACIOUS_CUSTOMIZER_DIR . '/override-defaults.php';
}
/**
* Register Spacious customize panels, sections and controls type.
*
* @param WP_Customize_Manager $wp_customize Theme Customizer object.
*/
public function register_panels_sections_controls( $wp_customize ) {
// Register panels and sections.
$wp_customize->register_panel_type( 'Spacious_WP_Customize_Panel' );
$wp_customize->register_section_type( 'Spacious_WP_Customize_Section' );
$wp_customize->register_section_type( 'Spacious_Upsell_Section' );
/**
* Register controls.
*/
/**
* WordPress default controls.
*/
// Checkbox control.
Spacious_Customize_Base_Control::add_control(
'checkbox',
array(
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_checkbox',
),
)
);
// Radio control.
Spacious_Customize_Base_Control::add_control(
'radio',
array(
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_radio_select',
),
)
);
// Select control.
Spacious_Customize_Base_Control::add_control(
'select',
array(
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_radio_select',
),
)
);
// Text control.
Spacious_Customize_Base_Control::add_control(
'text',
array(
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_nohtml',
),
)
);
// Number control.
Spacious_Customize_Base_Control::add_control(
'number',
array(
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_number',
),
)
);
// Email control.
Spacious_Customize_Base_Control::add_control(
'email',
array(
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_email',
),
)
);
// URL control.
Spacious_Customize_Base_Control::add_control(
'url',
array(
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_url',
),
)
);
// Textarea control.
Spacious_Customize_Base_Control::add_control(
'textarea',
array(
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_html',
),
)
);
// Dropdown pages control.
Spacious_Customize_Base_Control::add_control(
'dropdown-pages',
array(
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_dropdown_pages',
),
)
);
// Color control.
Spacious_Customize_Base_Control::add_control(
'color',
array(
'callback' => 'WP_Customize_Color_Control',
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_hex_color',
),
)
);
// Image upload control.
Spacious_Customize_Base_Control::add_control(
'image',
array(
'callback' => 'WP_Customize_Image_Control',
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_image_upload',
),
)
);
// Radio image control.
Spacious_Customize_Base_Control::add_control(
'spacious-radio-image',
array(
'callback' => 'Spacious_Radio_Image_Control',
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_radio_select',
),
)
);
// Heading control.
Spacious_Customize_Base_Control::add_control(
'spacious-heading',
array(
'callback' => 'Spacious_Heading_Control',
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_false_values',
),
)
);
// Editor control.
Spacious_Customize_Base_Control::add_control(
'spacious-editor',
array(
'callback' => 'Spacious_Editor_Control',
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_html',
),
)
);
// Color control.
Spacious_Customize_Base_Control::add_control(
'spacious-color',
array(
'callback' => 'Spacious_Color_Control',
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_alpha_color',
),
)
);
// Buttonset control.
Spacious_Customize_Base_Control::add_control(
'spacious-buttonset',
array(
'callback' => 'Spacious_Buttonset_Control',
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_radio_select',
),
)
);
// Toggle control.
Spacious_Customize_Base_Control::add_control(
'spacious-toggle',
array(
'callback' => 'Spacious_Toggle_Control',
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_checkbox',
),
)
);
// Divider control.
Spacious_Customize_Base_Control::add_control(
'spacious-divider',
array(
'callback' => 'Spacious_Divider_Control',
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_false_values',
),
)
);
// Slider control.
Spacious_Customize_Base_Control::add_control(
'spacious-slider',
array(
'callback' => 'Spacious_Slider_Control',
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_number',
),
)
);
// Custom control.
Spacious_Customize_Base_Control::add_control(
'spacious-custom',
array(
'callback' => 'Spacious_Custom_Control',
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_false_values',
),
)
);
// Dropdown categories control.
Spacious_Customize_Base_Control::add_control(
'spacious-dropdown-categories',
array(
'callback' => 'Spacious_Dropdown_Categories_Control',
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_dropdown_categories',
),
)
);
// Background control.
Spacious_Customize_Base_Control::add_control(
'spacious-background',
array(
'callback' => 'Spacious_Background_Control',
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_background',
),
)
);
// Typography control.
Spacious_Customize_Base_Control::add_control(
'spacious-typography',
array(
'callback' => 'Spacious_Typography_Control',
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_typography',
),
)
);
// Hidden control.
Spacious_Customize_Base_Control::add_control(
'spacious-hidden',
array(
'callback' => 'Spacious_Hidden_Control',
'sanitize_callback' => '',
)
);
// Sortable control.
Spacious_Customize_Base_Control::add_control(
'spacious-sortable',
array(
'callback' => 'Spacious_Sortable_Control',
'sanitize_callback' => array(
'Spacious_Customizer_Sanitizes',
'sanitize_sortable',
),
)
);
// Group control.
Spacious_Customize_Base_Control::add_control(
'spacious-group',
array(
'callback' => 'Spacious_Group_Control',
)
);
}
/**
* Include the required files for Customize option.
*/
public function customize_options_file_include() {
// Include the required customize section and panels register file.
require SPACIOUS_CUSTOMIZER_DIR . '/class-spacious-customizer-register-sections-panels.php';
/**
* Include the required customize options file.
*/
// Global.
require SPACIOUS_CUSTOMIZER_DIR . '/options/global/class-spacious-customize-colors-options.php';
require SPACIOUS_CUSTOMIZER_DIR . '/options/global/class-spacious-customize-background-options.php';
require SPACIOUS_CUSTOMIZER_DIR . '/options/global/class-spacious-customize-typography-options.php';
require SPACIOUS_CUSTOMIZER_DIR . '/options/global/class-spacious-customize-layout-options.php';
// Header.
require SPACIOUS_CUSTOMIZER_DIR . '/options/header/class-spacious-customize-site-identity-options.php';
require SPACIOUS_CUSTOMIZER_DIR . '/options/header/class-spacious-customize-header-media-options.php';
require SPACIOUS_CUSTOMIZER_DIR . '/options/header/class-spacious-customize-header-top-bar-options.php';
require SPACIOUS_CUSTOMIZER_DIR . '/options/header/class-spacious-customize-primary-header-options.php';
require SPACIOUS_CUSTOMIZER_DIR . '/options/header/class-spacious-customize-primary-menu-options.php';
require SPACIOUS_CUSTOMIZER_DIR . '/options/header/class-spacious-customize-header-button.php';
// Slider.
require SPACIOUS_CUSTOMIZER_DIR . '/options/slider/class-spacious-customize-slider-options.php';
// Content.
require SPACIOUS_CUSTOMIZER_DIR . '/options/content/class-spacious-customize-page-header-options.php';
require SPACIOUS_CUSTOMIZER_DIR . '/options/content/class-spacious-customize-blog-archive-options.php';
require SPACIOUS_CUSTOMIZER_DIR . '/options/content/class-spacious-customize-single-post-options.php';
require SPACIOUS_CUSTOMIZER_DIR . '/options/content/class-spacious-customize-page-options.php';
// Additional.
require SPACIOUS_CUSTOMIZER_DIR . '/options/social/class-spacious-customize-social-icons-options.php';
// Footer.
require SPACIOUS_CUSTOMIZER_DIR . '/options/footer/class-spacious-customize-footer-widgets-area-options.php';
// WooCommerce.
require SPACIOUS_CUSTOMIZER_DIR . '/options/woocommerce/class-spacious-customize-woocommerce-sidebar-options.php';
require SPACIOUS_CUSTOMIZER_DIR . '/options/woocommerce/class-spacious-customize-woocommerce-design-options.php';
}
}
return new Spacious_Customizer();