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); 8xbet Man City 479 – AjTentHouse http://ajtent.ca Thu, 28 Aug 2025 12:32:31 +0000 en hourly 1 https://wordpress.org/?v=6.9.4 8xbet Nhà Cái 8xbet Đăng Ký 8xbet Bú Ngay 88 888k http://ajtent.ca/link-vao-8xbet-877/ http://ajtent.ca/link-vao-8xbet-877/#respond Thu, 28 Aug 2025 12:32:31 +0000 https://ajtent.ca/?p=89234 nhà cái 8xbet

The Particular Usa Kingdom will be a planet head in enterprise, finance, and technology, generating it one associated with the particular the majority of appealing markets regarding setting up an online existence. Attempt .UK.COM regarding your current next online venture plus secure your presence inside typically the Combined Kingdom’s thriving digital economy. Typically The United Empire is usually a top international overall economy along with 1 associated with typically the the the better part of active electronic scenery. In Purchase To report mistreatment associated with a .UNITED KINGDOM.COM website, make sure you contact the particular Anti-Abuse Team at Gen.xyz/abuse or 2121 E. Your Own domain name name will be more compared to 8xbet.watches merely an address—it’s your current identity, your current company, and your own relationship to become in a position to the world’s most influential markets.

nhà cái 8xbet

Đôi Nét Giới Thiệu Về Nhà Cái 8xbet

  • Regardless Of Whether you’re starting a enterprise, expanding into the particular UK, or securing a premium electronic digital resource, .UNITED KINGDOM.COM will be typically the smart choice for international accomplishment.
  • To record misuse associated with a .BRITISH.COM domain, make sure you make contact with typically the Anti-Abuse Group at Gen.xyz/abuse or 2121 E.
  • The United Empire is a globe leader within business, financial, plus technologies, producing it a single associated with typically the most desired marketplaces with respect to establishing a good online existence.

Whether Or Not you’re releasing a business, expanding in to the particular UNITED KINGDOM, or securing reduced digital asset, .BRITISH.COM will be typically the smart choice for global achievement. With .BRITISH.COM, a person don’t have in order to pick among international achieve in add-on to BRITISH market relevance—you obtain the two.

  • To report mistreatment associated with a .UNITED KINGDOM.COM domain name, make sure you get in contact with the particular Anti-Abuse Group at Gen.xyz/abuse or 2121 E.
  • Along With .UNITED KINGDOM.COM, you don’t possess in purchase to pick in between worldwide reach and UK market relevance—you acquire each.
  • Regardless Of Whether you’re launching a enterprise, expanding directly into the UK, or securing reduced electronic advantage, .BRITISH.COM is usually the particular wise option with respect to international achievement.
  • Your domain name name is usually even more than merely a great address—it’s your identity, your own brand name, in addition to your link to end up being capable to the world’s most influential markets.
  • Attempt .UNITED KINGDOM.COM with respect to your next on the internet opportunity in addition to protected your occurrence in the particular United Kingdom’s growing electronic overall economy.
]]>
http://ajtent.ca/link-vao-8xbet-877/feed/ 0
8xbet Nhà Cái 8xbet Link Đăng Nhập 8xbet Chuẩn 2025 http://ajtent.ca/8xbet-1598921127-259-2/ http://ajtent.ca/8xbet-1598921127-259-2/#respond Thu, 28 Aug 2025 12:32:13 +0000 https://ajtent.ca/?p=89232 nhà cái 8xbet

The Particular United Empire is usually a world head in business, finance, plus technology, generating it 1 associated with the many desired markets for setting up a good on the internet existence. Try Out .UK.COM for your following on the internet endeavor plus secure your current occurrence within the particular United Kingdom’s thriving electronic digital economic climate. Typically The United Empire will be a top worldwide overall economy with one associated with the the vast majority of active electronic digital landscapes. In Buy To report misuse associated with a .UK.COM domain name , please make contact with the particular Anti-Abuse Team at Gen.xyz/abuse or 2121 E. Your domain name is even more than simply an address—it’s your own personality, your brand name, plus your relationship to the particular world’s many important marketplaces.

  • Attempt .BRITISH.COM regarding your current subsequent on the internet endeavor and secure your occurrence in typically the United Kingdom’s thriving electronic economic climate.
  • Typically The United Empire will be a major global overall economy with a single associated with the most dynamic electronic digital panoramas.
  • Your domain name name will be a lot more compared to merely a great address—it’s your current identity, your own brand name, plus your current link in buy to typically the world’s the majority of influential market segments.
  • To statement abuse associated with a .BRITISH.COM domain, you should make contact with typically the Anti-Abuse Team at Gen.xyz/abuse or 2121 E.

Khám Phá Kho Sport Siêu Đỉnh Của Nhà Cái 8xbet

  • Typically The Combined Empire is a world innovator inside enterprise, finance, plus technology, making it one of typically the many desirable marketplaces for setting up an online presence.
  • Your Own domain name will be a lot more compared to simply an address—it’s your own identity, your brand name, and your current link in order to typically the world’s most influential markets.
  • To Become Capable To statement misuse associated with a .UNITED KINGDOM.COM domain, you should make contact with typically the Anti-Abuse Group at Gen.xyz/abuse or 2121 E.
  • With .BRITISH.COM, a person don’t possess to select in between worldwide reach and UK market relevance—you acquire both.
  • The United Kingdom will be a leading global economic climate along with 1 of the particular many powerful digital scenery.
  • Try Out .UK.COM with regard to your current next on-line venture in inclusion to secure your presence inside typically the Combined Kingdom’s growing digital economy.

Regardless Of Whether you’re launching a business, growing directly into the UK, or acquiring a premium electronic resource, .BRITISH.COM is the 8xbet.watches wise choice regarding worldwide achievement. Along With .UNITED KINGDOM.COM, a person don’t have to choose in between international reach in inclusion to UNITED KINGDOM market relevance—you obtain both.

nhà cái 8xbet

]]>
http://ajtent.ca/8xbet-1598921127-259-2/feed/ 0
8xbet Nhà Cái 8xbet Link Đăng Nhập 8xbet Chuẩn 2025 http://ajtent.ca/8xbet-1598921127-259/ http://ajtent.ca/8xbet-1598921127-259/#respond Thu, 28 Aug 2025 12:31:53 +0000 https://ajtent.ca/?p=89230 nhà cái 8xbet

The Particular United Empire is usually a world head in business, finance, plus technology, generating it 1 associated with the many desired markets for setting up a good on the internet existence. Try Out .UK.COM for your following on the internet endeavor plus secure your current occurrence within the particular United Kingdom’s thriving electronic digital economic climate. Typically The United Empire will be a top worldwide overall economy with one associated with the the vast majority of active electronic digital landscapes. In Buy To report misuse associated with a .UK.COM domain name , please make contact with the particular Anti-Abuse Team at Gen.xyz/abuse or 2121 E. Your domain name is even more than simply an address—it’s your own personality, your brand name, plus your relationship to the particular world’s many important marketplaces.

  • Attempt .BRITISH.COM regarding your current subsequent on the internet endeavor and secure your occurrence in typically the United Kingdom’s thriving electronic economic climate.
  • Typically The United Empire will be a major global overall economy with a single associated with the most dynamic electronic digital panoramas.
  • Your domain name name will be a lot more compared to merely a great address—it’s your current identity, your own brand name, plus your current link in buy to typically the world’s the majority of influential market segments.
  • To statement abuse associated with a .BRITISH.COM domain, you should make contact with typically the Anti-Abuse Team at Gen.xyz/abuse or 2121 E.

Khám Phá Kho Sport Siêu Đỉnh Của Nhà Cái 8xbet

  • Typically The Combined Empire is a world innovator inside enterprise, finance, plus technology, making it one of typically the many desirable marketplaces for setting up an online presence.
  • Your Own domain name will be a lot more compared to simply an address—it’s your own identity, your brand name, and your current link in order to typically the world’s most influential markets.
  • To Become Capable To statement misuse associated with a .UNITED KINGDOM.COM domain, you should make contact with typically the Anti-Abuse Group at Gen.xyz/abuse or 2121 E.
  • With .BRITISH.COM, a person don’t possess to select in between worldwide reach and UK market relevance—you acquire both.
  • The United Kingdom will be a leading global economic climate along with 1 of the particular many powerful digital scenery.
  • Try Out .UK.COM with regard to your current next on-line venture in inclusion to secure your presence inside typically the Combined Kingdom’s growing digital economy.

Regardless Of Whether you’re launching a business, growing directly into the UK, or acquiring a premium electronic resource, .BRITISH.COM is the 8xbet.watches wise choice regarding worldwide achievement. Along With .UNITED KINGDOM.COM, a person don’t have to choose in between international reach in inclusion to UNITED KINGDOM market relevance—you obtain both.

nhà cái 8xbet

]]>
http://ajtent.ca/8xbet-1598921127-259/feed/ 0