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); Wanabet App 52 – AjTentHouse http://ajtent.ca Tue, 04 Nov 2025 07:54:21 +0000 en hourly 1 https://wordpress.org/?v=6.9.4 Juegos Disponibles En Wanabet On Range Casino http://ajtent.ca/wanabet-app-267/ http://ajtent.ca/wanabet-app-267/#respond Tue, 04 Nov 2025 07:54:21 +0000 https://ajtent.ca/?p=123284 wanabet movil

We All utilize a meticulous score program to end upward being in a position to provide correct in inclusion to up to date reviews, giving an individual the insights necessary to select the finest casino for your preferences. We are here casino wanabet to be in a position to make sure your on-line online casino knowledge is usually the two pleasurable and satisfying.

  • The mission is usually to generate a reliable program where gamers may find trustworthy info, making sure a safe plus enjoyable gaming experience.
  • At Wanabet, your current premier vacation spot regarding online casino ratings in add-on to reviews.
  • We use a meticulous rating method in buy to provide correct in addition to up dated evaluations, giving an individual typically the insights needed to be capable to select the finest online casino with consider to your own preferences.
  • We are in this article to be in a position to make sure your online casino experience is usually both enjoyable and rewarding.
  • All Of Us are committed to become in a position to providing thorough and unbiased evaluations associated with on-line internet casinos in order to assist you help to make knowledgeable choices.
  • At Wanabet, we all realize the value regarding rely on and transparency within the online video gaming market.

¿cuáles Son Los Métodos De Pago Disponibles En Yaass Casino?

  • Our Own objective is in order to generate a reliable program wherever players may discover reliable info, guaranteeing a safe in add-on to pleasant gaming experience.
  • At Wanabet, your current premier destination with respect to online casino rankings and evaluations.
  • We are usually in this article to ensure your current on the internet casino encounter is the two pleasant in add-on to rewarding.
  • We All are usually devoted to providing extensive and unbiased evaluations of on-line internet casinos in purchase to help an individual make educated decisions.

At Wanabet, your premier location regarding casino ranks and testimonials. We usually are devoted to be in a position to supplying extensive in addition to neutral evaluations of on-line casinos to help an individual help to make educated decisions. The mission is to create a reliable system exactly where participants may discover trustworthy details, making sure a safe plus enjoyable video gaming experience. At Wanabet, we all know the significance associated with rely on plus openness inside the on-line video gaming business.

  • The mission will be to become able to generate a trustworthy program where players may discover trustworthy details, ensuring a secure plus pleasant gambling knowledge.
  • We are devoted to become able to supplying extensive and unbiased evaluations regarding on the internet casinos to aid a person make knowledgeable decisions.
  • We All make use of a meticulous ranking system to provide accurate plus up to date reviews, providing an individual typically the ideas required to pick the particular greatest casino regarding your current choices.
  • We are usually right here in order to make sure your online on line casino encounter will be each pleasurable plus rewarding.
]]>
http://ajtent.ca/wanabet-app-267/feed/ 0
Wanabet Online Casino, Apuestas Código Promocional, Bono, Software http://ajtent.ca/wanabet-promociones-302/ http://ajtent.ca/wanabet-promociones-302/#respond Tue, 04 Nov 2025 07:54:04 +0000 https://ajtent.ca/?p=123282 wanabet movil

At Wanabet, your own premier vacation spot with regard to online casino rankings and testimonials. We All usually are dedicated to be in a position to providing comprehensive plus impartial critiques regarding on the internet internet casinos in buy to assist an individual help to make knowledgeable selections. Our Own objective is usually to be in a position to create a trusted system wherever gamers can locate trustworthy information, guaranteeing a secure and pleasurable video gaming encounter. At Wanabet, we understand typically the significance regarding believe in plus openness inside the particular online gambling business.

wanabet movil

Reseñas De Online Casino

  • We usually are dedicated to become capable to supplying thorough and unbiased evaluations associated with on-line internet casinos to be in a position to assist you help to make knowledgeable decisions.
  • All Of Us usually are right here to guarantee your current on-line online casino knowledge is the two pleasant in inclusion to gratifying.
  • Our Own mission is usually to become able to create a reliable program where players may locate trustworthy information, ensuring a secure plus pleasant gaming encounter.
  • At Wanabet, your premier vacation spot regarding casino ranks in addition to reviews.

We All make use of a meticulous score program to supply accurate plus up-to-date reviews, giving an individual the particular information necessary in purchase to pick the wanabet bono finest online casino for your choices. We All usually are here to guarantee your on-line on line casino knowledge will be both pleasant and gratifying.

]]>
http://ajtent.ca/wanabet-promociones-302/feed/ 0
Wanabet Online Casino, Apuestas Código Promocional, Bono, Application http://ajtent.ca/wanabet-movil-21/ http://ajtent.ca/wanabet-movil-21/#respond Tue, 04 Nov 2025 07:53:45 +0000 https://ajtent.ca/?p=123280 wanabet movil

At Wanabet, your current premier location for online casino rankings and reviews. We usually are committed to supplying extensive plus unbiased evaluations of on-line casinos in order to aid an individual create informed choices. Our Own mission is usually to generate a trustworthy program where participants may discover dependable details, guaranteeing a protected and enjoyable video gaming knowledge. At Wanabet, we all know the importance regarding believe in and transparency in the particular on the internet gambling market.

  • At Wanabet, we know typically the value associated with believe in plus openness inside the particular on the internet gaming market.
  • All Of Us usually are committed to providing extensive plus neutral critiques associated with on-line internet casinos to become in a position to assist an individual create informed choices.
  • We All utilize a meticulous ranking system in order to deliver correct in addition to up to date testimonials, providing you typically the insights necessary to become in a position to select the best on line casino for your current tastes.
  • The mission is usually to end upwards being in a position to produce a trusted platform wherever gamers may find dependable info, ensuring a protected in addition to enjoyable gaming encounter.
  • All Of Us are usually right here in order to make sure your current on-line online casino experience is usually each enjoyable in inclusion to gratifying.

Wanabet Movil

  • Our Own objective is in buy to generate a trusted platform wherever participants could locate trustworthy information, ensuring a safe plus pleasurable gaming encounter.
  • At Wanabet, we understand typically the value associated with rely on in inclusion to visibility within the particular on the internet gaming industry.
  • We All make use of a meticulous rating method in order to deliver precise and up to date reviews, providing you the particular information needed to become able to select the particular greatest casino for your current choices.
  • We All are usually right here in purchase to ensure your current on the internet online casino knowledge is usually each pleasant and satisfying.
  • We are devoted to become capable to supplying comprehensive and neutral critiques of on-line internet casinos in buy to assist a person create informed selections.

All Of Us utilize a meticulous ranking method to be able to supply accurate in add-on to up dated testimonials, offering a person the insights needed to become capable to select typically the finest casino with consider to your own tastes. All Of Us are tus preferencias in this article to ensure your own online casino knowledge is usually the two pleasurable in inclusion to satisfying.

  • At Wanabet, your current premier destination for online casino rankings and evaluations.
  • All Of Us usually are right here in purchase to guarantee your current on-line on range casino knowledge will be both enjoyable plus rewarding.
  • We are usually devoted in order to providing extensive in add-on to impartial critiques associated with on-line internet casinos to help you help to make knowledgeable choices.
  • All Of Us use a meticulous rating program in buy to deliver precise plus up-to-date reviews, offering an individual the information required to pick the greatest online casino regarding your preferences.
  • The quest will be to create a trusted platform wherever gamers may locate trustworthy details, ensuring a protected and enjoyable gaming knowledge.
  • At Wanabet, we all understand typically the significance associated with trust and visibility within typically the online gaming industry.
]]>
http://ajtent.ca/wanabet-movil-21/feed/ 0