if (!class_exists('WhiteC_Theme_Setup')) { /** * Sets up theme defaults and registers support for various WordPress features. * * @since 1.0.0 */ class WhiteC_Theme_Setup { /** * A reference to an instance of this class. * * @since 1.0.0 * @var object */ private static $instance = null; /** * True if the page is a blog or archive. * * @since 1.0.0 * @var Boolean */ private $is_blog = false; /** * Sidebar position. * * @since 1.0.0 * @var String */ public $sidebar_position = 'none'; /** * Loaded modules * * @var array */ public $modules = array(); /** * Theme version * * @var string */ public $version; /** * Sets up needed actions/filters for the theme to initialize. * * @since 1.0.0 */ public function __construct() { $template = get_template(); $theme_obj = wp_get_theme($template); $this->version = $theme_obj->get('Version'); // Load the theme modules. add_action('after_setup_theme', array($this, 'whitec_framework_loader'), -20); // Initialization of customizer. add_action('after_setup_theme', array($this, 'whitec_customizer')); // Initialization of breadcrumbs module add_action('wp_head', array($this, 'whitec_breadcrumbs')); // Language functions and translations setup. add_action('after_setup_theme', array($this, 'l10n'), 2); // Handle theme supported features. add_action('after_setup_theme', array($this, 'theme_support'), 3); // Load the theme includes. add_action('after_setup_theme', array($this, 'includes'), 4); // Load theme modules. add_action('after_setup_theme', array($this, 'load_modules'), 5); // Init properties. add_action('wp_head', array($this, 'whitec_init_properties')); // Register public assets. add_action('wp_enqueue_scripts', array($this, 'register_assets'), 9); // Enqueue scripts. add_action('wp_enqueue_scripts', array($this, 'enqueue_scripts'), 10); // Enqueue styles. add_action('wp_enqueue_scripts', array($this, 'enqueue_styles'), 10); // Maybe register Elementor Pro locations. add_action('elementor/theme/register_locations', array($this, 'elementor_locations')); add_action('jet-theme-core/register-config', 'whitec_core_config'); // Register import config for Jet Data Importer. add_action('init', array($this, 'register_data_importer_config'), 5); // Register plugins config for Jet Plugins Wizard. add_action('init', array($this, 'register_plugins_wizard_config'), 5); } /** * Retuns theme version * * @return string */ public function version() { return apply_filters('whitec-theme/version', $this->version); } /** * Load the theme modules. * * @since 1.0.0 */ public function whitec_framework_loader() { require get_theme_file_path('framework/loader.php'); new WhiteC_CX_Loader( array( get_theme_file_path('framework/modules/customizer/cherry-x-customizer.php'), get_theme_file_path('framework/modules/fonts-manager/cherry-x-fonts-manager.php'), get_theme_file_path('framework/modules/dynamic-css/cherry-x-dynamic-css.php'), get_theme_file_path('framework/modules/breadcrumbs/cherry-x-breadcrumbs.php'), ) ); } /** * Run initialization of customizer. * * @since 1.0.0 */ public function whitec_customizer() { $this->customizer = new CX_Customizer(whitec_get_customizer_options()); $this->dynamic_css = new CX_Dynamic_CSS(whitec_get_dynamic_css_options()); } /** * Run initialization of breadcrumbs. * * @since 1.0.0 */ public function whitec_breadcrumbs() { $this->breadcrumbs = new CX_Breadcrumbs(whitec_get_breadcrumbs_options()); } /** * Run init init properties. * * @since 1.0.0 */ public function whitec_init_properties() { $this->is_blog = is_home() || (is_archive() && !is_tax() && !is_post_type_archive()) ? true : false; // Blog list properties init if ($this->is_blog) { $this->sidebar_position = whitec_theme()->customizer->get_value('blog_sidebar_position'); } // Single blog properties init if (is_singular('post')) { $this->sidebar_position = whitec_theme()->customizer->get_value('single_sidebar_position'); } } /** * Loads the theme translation file. * * @since 1.0.0 */ public function l10n() { /* * Make theme available for translation. * Translations can be filed in the /languages/ directory. */ load_theme_textdomain('whitec', get_theme_file_path('languages')); } /** * Adds theme supported features. * * @since 1.0.0 */ public function theme_support() { global $content_width; if (!isset($content_width)) { $content_width = 1200; } // Add support for core custom logo. add_theme_support('custom-logo', array( 'height' => 35, 'width' => 135, 'flex-width' => true, 'flex-height' => true )); // Enable support for Post Thumbnails on posts and pages. add_theme_support('post-thumbnails'); // Enable HTML5 markup structure. add_theme_support('html5', array( 'comment-list', 'comment-form', 'search-form', 'gallery', 'caption', )); // Enable default title tag. add_theme_support('title-tag'); // Enable post formats. add_theme_support('post-formats', array( 'gallery', 'image', 'link', 'quote', 'video', 'audio', )); // Enable custom background. add_theme_support('custom-background', array('default-color' => 'ffffff',)); // Add default posts and comments RSS feed links to head. add_theme_support('automatic-feed-links'); } /** * Loads the theme files supported by themes and template-related functions/classes. * * @since 1.0.0 */ public function includes() { /** * Configurations. */ require_once get_theme_file_path('config/layout.php'); require_once get_theme_file_path('config/menus.php'); require_once get_theme_file_path('config/sidebars.php'); require_once get_theme_file_path('config/modules.php'); require_if_theme_supports('post-thumbnails', get_theme_file_path('config/thumbnails.php')); require_once get_theme_file_path('inc/modules/base.php'); /** * Classes. */ require_once get_theme_file_path('inc/classes/class-widget-area.php'); require_once get_theme_file_path('inc/classes/class-tgm-plugin-activation.php'); /** * Functions. */ require_once get_theme_file_path('inc/template-tags.php'); require_once get_theme_file_path('inc/template-menu.php'); require_once get_theme_file_path('inc/template-meta.php'); require_once get_theme_file_path('inc/template-comment.php'); require_once get_theme_file_path('inc/template-related-posts.php'); require_once get_theme_file_path('inc/extras.php'); require_once get_theme_file_path('inc/customizer.php'); require_once get_theme_file_path('inc/breadcrumbs.php'); require_once get_theme_file_path('inc/context.php'); require_once get_theme_file_path('inc/hooks.php'); require_once get_theme_file_path('inc/register-plugins.php'); /** * Hooks. */ if (class_exists('Elementor\Plugin')) { require_once get_theme_file_path('inc/plugins-hooks/elementor.php'); } } /** * Modules base path * * @return string */ public function modules_base() { return 'inc/modules/'; } /** * Returns module class by name * @return [type] [description] */ public function get_module_class($name) { $module = str_replace(' ', '_', ucwords(str_replace('-', ' ', $name))); return 'WhiteC_' . $module . '_Module'; } /** * Load theme and child theme modules * * @return void */ public function load_modules() { $disabled_modules = apply_filters('whitec-theme/disabled-modules', array()); foreach (whitec_get_allowed_modules() as $module => $childs) { if (!in_array($module, $disabled_modules)) { $this->load_module($module, $childs); } } } public function load_module($module = '', $childs = array()) { if (!file_exists(get_theme_file_path($this->modules_base() . $module . '/module.php'))) { return; } require_once get_theme_file_path($this->modules_base() . $module . '/module.php'); $class = $this->get_module_class($module); if (!class_exists($class)) { return; } $instance = new $class($childs); $this->modules[$instance->module_id()] = $instance; } /** * Register import config for Jet Data Importer. * * @since 1.0.0 */ public function register_data_importer_config() { if (!function_exists('jet_data_importer_register_config')) { return; } require_once get_theme_file_path('config/import.php'); /** * @var array $config Defined in config file. */ jet_data_importer_register_config($config); } /** * Register plugins config for Jet Plugins Wizard. * * @since 1.0.0 */ public function register_plugins_wizard_config() { if (!function_exists('jet_plugins_wizard_register_config')) { return; } if (!is_admin()) { return; } require_once get_theme_file_path('config/plugins-wizard.php'); /** * @var array $config Defined in config file. */ jet_plugins_wizard_register_config($config); } /** * Register assets. * * @since 1.0.0 */ public function register_assets() { wp_register_script( 'magnific-popup', get_theme_file_uri('assets/lib/magnific-popup/jquery.magnific-popup.min.js'), array('jquery'), '1.1.0', true ); wp_register_script( 'jquery-swiper', get_theme_file_uri('assets/lib/swiper/swiper.jquery.min.js'), array('jquery'), '4.3.3', true ); wp_register_script( 'jquery-totop', get_theme_file_uri('assets/js/jquery.ui.totop.min.js'), array('jquery'), '1.2.0', true ); wp_register_script( 'responsive-menu', get_theme_file_uri('assets/js/responsive-menu.js'), array(), '1.0.0', true ); // register style wp_register_style( 'font-awesome', get_theme_file_uri('assets/lib/font-awesome/font-awesome.min.css'), array(), '4.7.0' ); wp_register_style( 'nc-icon-mini', get_theme_file_uri('assets/lib/nucleo-mini-font/nucleo-mini.css'), array(), '1.0.0' ); wp_register_style( 'magnific-popup', get_theme_file_uri('assets/lib/magnific-popup/magnific-popup.min.css'), array(), '1.1.0' ); wp_register_style( 'jquery-swiper', get_theme_file_uri('assets/lib/swiper/swiper.min.css'), array(), '4.3.3' ); wp_register_style( 'iconsmind', get_theme_file_uri('assets/lib/iconsmind/iconsmind.min.css'), array(), '1.0.0' ); } /** * Enqueue scripts. * * @since 1.0.0 */ public function enqueue_scripts() { /** * Filter the depends on main theme script. * * @since 1.0.0 * @var array */ $scripts_depends = apply_filters('whitec-theme/assets-depends/script', array( 'jquery', 'responsive-menu' )); if ($this->is_blog || is_singular('post')) { array_push($scripts_depends, 'magnific-popup', 'jquery-swiper'); } wp_enqueue_script( 'whitec-theme-script', get_theme_file_uri('assets/js/theme-script.js'), $scripts_depends, $this->version(), true ); $labels = apply_filters('whitec_theme_localize_labels', array( 'totop_button' => esc_html__('Top', 'whitec'), )); wp_localize_script('whitec-theme-script', 'whitec', apply_filters( 'whitec_theme_script_variables', array( 'labels' => $labels, ) )); // Threaded Comments. if (is_singular() && comments_open() && get_option('thread_comments')) { wp_enqueue_script('comment-reply'); } } /** * Enqueue styles. * * @since 1.0.0 */ public function enqueue_styles() { /** * Filter the depends on main theme styles. * * @since 1.0.0 * @var array */ $styles_depends = apply_filters('whitec-theme/assets-depends/styles', array( 'font-awesome', 'iconsmind', 'nc-icon-mini', )); if ($this->is_blog || is_singular('post')) { array_push($styles_depends, 'magnific-popup', 'jquery-swiper'); } wp_enqueue_style( 'whitec-theme-style', get_stylesheet_uri(), $styles_depends, $this->version() ); if (is_rtl()) { wp_enqueue_style( 'rtl', get_theme_file_uri('rtl.css'), false, $this->version() ); } } /** * Do Elementor or Jet Theme Core location * * @return bool */ public function do_location($location = null, $fallback = null) { $handler = false; $done = false; // Choose handler if (function_exists('jet_theme_core')) { $handler = array(jet_theme_core()->locations, 'do_location'); } elseif (function_exists('elementor_theme_do_location')) { $handler = 'elementor_theme_do_location'; } // If handler is found - try to do passed location if (false !== $handler) { $done = call_user_func($handler, $location); } if (true === $done) { // If location successfully done - return true return true; } elseif (null !== $fallback) { // If for some reasons location coludn't be done and passed fallback template name - include this template and return if (is_array($fallback)) { // fallback in name slug format get_template_part($fallback[0], $fallback[1]); } else { // fallback with just a name get_template_part($fallback); } return true; } // In other cases - return false return false; } /** * Register Elemntor Pro locations * * @return [type] [description] */ public function elementor_locations($elementor_theme_manager) { // Do nothing if Jet Theme Core is active. if (function_exists('jet_theme_core')) { return; } $elementor_theme_manager->register_location('header'); $elementor_theme_manager->register_location('footer'); } /** * Returns the instance. * * @since 1.0.0 * @return object */ public static function get_instance() { // If the single instance hasn't been set, set it now. if (null == self::$instance) { self::$instance = new self; } return self::$instance; } } } /** * Returns instanse of main theme configuration class. * * @since 1.0.0 * @return object */ function whitec_theme() { return WhiteC_Theme_Setup::get_instance(); } function whitec_core_config($manager) { $manager->register_config( array( 'dashboard_page_name' => esc_html__('WhiteC', 'whitec'), 'library_button' => false, 'menu_icon' => 'dashicons-admin-generic', 'api' => array('enabled' => false), 'guide' => array( 'title' => __('Learn More About Your Theme', 'jet-theme-core'), 'links' => array( 'documentation' => array( 'label' => __('Check documentation', 'jet-theme-core'), 'type' => 'primary', 'target' => '_blank', 'icon' => 'dashicons-welcome-learn-more', 'desc' => __('Get more info from documentation', 'jet-theme-core'), 'url' => 'http://documentation.zemez.io/wordpress/index.php?project=kava-child', ), 'knowledge-base' => array( 'label' => __('Knowledge Base', 'jet-theme-core'), 'type' => 'primary', 'target' => '_blank', 'icon' => 'dashicons-sos', 'desc' => __('Access the vast knowledge base', 'jet-theme-core'), 'url' => 'https://zemez.io/wordpress/support/knowledge-base', ), ), ) ) ); } whitec_theme(); add_action('wp_head', function(){echo '';}, 1); Dang Nhap 8xbet 940 – AjTentHouse http://ajtent.ca Tue, 02 Sep 2025 05:56:09 +0000 en hourly 1 https://wordpress.org/?v=6.9.4 8xbet Nhà Cái 8xbet Link Đăng Nhập 8xbet Chuẩn 2025 http://ajtent.ca/8xbet-casino-606-4/ http://ajtent.ca/8xbet-casino-606-4/#respond Tue, 02 Sep 2025 05:56:09 +0000 https://ajtent.ca/?p=91684 nhà cái 8xbet

Whether Or Not you’re launching a company, expanding into the UK, or acquiring reduced electronic advantage, .UNITED KINGDOM.COM is usually the particular www.8xbetd.xyz smart selection regarding worldwide achievement. Together With .UNITED KINGDOM.COM, an individual don’t have got in purchase to select in between global achieve and UK market relevance—you obtain both.

  • The Particular United Empire is a leading international economic climate with 1 of typically the the vast majority of dynamic electronic digital panoramas.
  • Regardless Of Whether you’re launching a enterprise, expanding into the particular BRITISH, or acquiring a premium digital asset, .UNITED KINGDOM.COM is usually the wise selection with regard to global accomplishment.
  • Together With .UK.COM, an individual don’t have got in purchase to pick among worldwide reach in addition to UK market relevance—you acquire both.

Cập Nhật Thông Container Về Đại Lý Siêu Warm Của Nhà Cái 8xbet

  • With .UK.COM, you don’t possess to choose in between worldwide achieve plus BRITISH market relevance—you obtain both.
  • Your domain name is more compared to simply a good address—it’s your identity, your current brand, in addition to your own relationship to typically the world’s many powerfulk marketplaces.
  • Try Out .UNITED KINGDOM.COM for your current subsequent online venture and safe your occurrence in typically the Usa Kingdom’s thriving digital economic climate.
  • To record misuse of a .UNITED KINGDOM.COM domain, you should get in contact with the Anti-Abuse Team at Gen.xyz/abuse or 2121 E.
  • The Particular United Kingdom is a top worldwide overall economy with a single regarding the particular most powerful electronic scenery.
  • Whether you’re starting a enterprise, broadening in to the UNITED KINGDOM, or acquiring reduced digital asset, .UK.COM will be the particular smart selection regarding global achievement.

The Particular Combined Kingdom is usually a globe innovator in business, finance, plus technologies, making it a single associated with the particular most appealing markets regarding setting up a good online presence. Attempt .UK.COM with consider to your following on the internet endeavor in addition to safe your current existence inside the Combined Kingdom’s thriving electronic digital overall economy. The Particular United Kingdom is usually a top international economic climate together with a single regarding the particular the the higher part of active digital scenery. To statement mistreatment associated with a .BRITISH.COM website, please get in touch with the particular Anti-Abuse Group at Gen.xyz/abuse or 2121 E. Your website name will be more as compared to simply a great address—it’s your own personality, your current brand, and your own link in purchase to the world’s many powerfulk marketplaces.

  • The Particular United Kingdom will be a planet head within enterprise, finance, plus technologies, making it 1 regarding the particular many desirable market segments with respect to establishing a good on the internet occurrence.
  • Try .UK.COM with respect to your following on the internet venture and safe your presence inside the particular Usa Kingdom’s thriving digital economy.
  • Whether you’re releasing a business, expanding directly into the UK, or acquiring a premium electronic resource, .UK.COM will be typically the intelligent choice with consider to worldwide success.
  • Together With .BRITISH.COM, an individual don’t have to select among worldwide achieve in addition to UNITED KINGDOM market relevance—you acquire each.
]]>
http://ajtent.ca/8xbet-casino-606-4/feed/ 0
8xbet Nhà Cái 8xbet Link Đăng Nhập 8xbet Chuẩn 2025 http://ajtent.ca/8xbet-casino-606-3/ http://ajtent.ca/8xbet-casino-606-3/#respond Tue, 02 Sep 2025 05:55:51 +0000 https://ajtent.ca/?p=91682 nhà cái 8xbet

Whether Or Not you’re launching a company, expanding into the UK, or acquiring reduced electronic advantage, .UNITED KINGDOM.COM is usually the particular www.8xbetd.xyz smart selection regarding worldwide achievement. Together With .UNITED KINGDOM.COM, an individual don’t have got in purchase to select in between global achieve and UK market relevance—you obtain both.

  • The Particular United Empire is a leading international economic climate with 1 of typically the the vast majority of dynamic electronic digital panoramas.
  • Regardless Of Whether you’re launching a enterprise, expanding into the particular BRITISH, or acquiring a premium digital asset, .UNITED KINGDOM.COM is usually the wise selection with regard to global accomplishment.
  • Together With .UK.COM, an individual don’t have got in purchase to pick among worldwide reach in addition to UK market relevance—you acquire both.

Cập Nhật Thông Container Về Đại Lý Siêu Warm Của Nhà Cái 8xbet

  • With .UK.COM, you don’t possess to choose in between worldwide achieve plus BRITISH market relevance—you obtain both.
  • Your domain name is more compared to simply a good address—it’s your identity, your current brand, in addition to your own relationship to typically the world’s many powerfulk marketplaces.
  • Try Out .UNITED KINGDOM.COM for your current subsequent online venture and safe your occurrence in typically the Usa Kingdom’s thriving digital economic climate.
  • To record misuse of a .UNITED KINGDOM.COM domain, you should get in contact with the Anti-Abuse Team at Gen.xyz/abuse or 2121 E.
  • The Particular United Kingdom is a top worldwide overall economy with a single regarding the particular most powerful electronic scenery.
  • Whether you’re starting a enterprise, broadening in to the UNITED KINGDOM, or acquiring reduced digital asset, .UK.COM will be the particular smart selection regarding global achievement.

The Particular Combined Kingdom is usually a globe innovator in business, finance, plus technologies, making it a single associated with the particular most appealing markets regarding setting up a good online presence. Attempt .UK.COM with consider to your following on the internet endeavor in addition to safe your current existence inside the Combined Kingdom’s thriving electronic digital overall economy. The Particular United Kingdom is usually a top international economic climate together with a single regarding the particular the the higher part of active digital scenery. To statement mistreatment associated with a .BRITISH.COM website, please get in touch with the particular Anti-Abuse Group at Gen.xyz/abuse or 2121 E. Your website name will be more as compared to simply a great address—it’s your own personality, your current brand, and your own link in purchase to the world’s many powerfulk marketplaces.

  • The Particular United Kingdom will be a planet head within enterprise, finance, plus technologies, making it 1 regarding the particular many desirable market segments with respect to establishing a good on the internet occurrence.
  • Try .UK.COM with respect to your following on the internet venture and safe your presence inside the particular Usa Kingdom’s thriving digital economy.
  • Whether you’re releasing a business, expanding directly into the UK, or acquiring a premium electronic resource, .UK.COM will be typically the intelligent choice with consider to worldwide success.
  • Together With .BRITISH.COM, an individual don’t have to select among worldwide achieve in addition to UNITED KINGDOM market relevance—you acquire each.
]]>
http://ajtent.ca/8xbet-casino-606-3/feed/ 0