/** * Astra functions and definitions * * @link https://developer.wordpress.org/themes/basics/theme-functions/ * * @package Astra * @since 1.0.0 */ if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly. } /** * Define Constants */ define( 'ASTRA_THEME_VERSION', '4.11.7' ); define( 'ASTRA_THEME_SETTINGS', 'astra-settings' ); define( 'ASTRA_THEME_DIR', trailingslashit( get_template_directory() ) ); define( 'ASTRA_THEME_URI', trailingslashit( esc_url( get_template_directory_uri() ) ) ); define( 'ASTRA_THEME_ORG_VERSION', file_exists( ASTRA_THEME_DIR . 'inc/w-org-version.php' ) ); /** * Minimum Version requirement of the Astra Pro addon. * This constant will be used to display the notice asking user to update the Astra addon to the version defined below. */ define( 'ASTRA_EXT_MIN_VER', '4.11.5' ); /** * Load in-house compatibility. */ if ( ASTRA_THEME_ORG_VERSION ) { require_once ASTRA_THEME_DIR . 'inc/w-org-version.php'; } /** * Setup helper functions of Astra. */ require_once ASTRA_THEME_DIR . 'inc/core/class-astra-theme-options.php'; require_once ASTRA_THEME_DIR . 'inc/core/class-theme-strings.php'; require_once ASTRA_THEME_DIR . 'inc/core/common-functions.php'; require_once ASTRA_THEME_DIR . 'inc/core/class-astra-icons.php'; define( 'ASTRA_WEBSITE_BASE_URL', 'https://wpastra.com' ); /** * ToDo: Deprecate constants in future versions as they are no longer used in the codebase. */ define( 'ASTRA_PRO_UPGRADE_URL', ASTRA_THEME_ORG_VERSION ? astra_get_pro_url( '/pricing/', 'free-theme', 'dashboard', 'upgrade' ) : 'https://woocommerce.com/products/astra-pro/' ); define( 'ASTRA_PRO_CUSTOMIZER_UPGRADE_URL', ASTRA_THEME_ORG_VERSION ? astra_get_pro_url( '/pricing/', 'free-theme', 'customizer', 'upgrade' ) : 'https://woocommerce.com/products/astra-pro/' ); /** * Update theme */ require_once ASTRA_THEME_DIR . 'inc/theme-update/astra-update-functions.php'; require_once ASTRA_THEME_DIR . 'inc/theme-update/class-astra-theme-background-updater.php'; /** * Fonts Files */ require_once ASTRA_THEME_DIR . 'inc/customizer/class-astra-font-families.php'; if ( is_admin() ) { require_once ASTRA_THEME_DIR . 'inc/customizer/class-astra-fonts-data.php'; } require_once ASTRA_THEME_DIR . 'inc/lib/webfont/class-astra-webfont-loader.php'; require_once ASTRA_THEME_DIR . 'inc/lib/docs/class-astra-docs-loader.php'; require_once ASTRA_THEME_DIR . 'inc/customizer/class-astra-fonts.php'; require_once ASTRA_THEME_DIR . 'inc/dynamic-css/custom-menu-old-header.php'; require_once ASTRA_THEME_DIR . 'inc/dynamic-css/container-layouts.php'; require_once ASTRA_THEME_DIR . 'inc/dynamic-css/astra-icons.php'; require_once ASTRA_THEME_DIR . 'inc/core/class-astra-walker-page.php'; require_once ASTRA_THEME_DIR . 'inc/core/class-astra-enqueue-scripts.php'; require_once ASTRA_THEME_DIR . 'inc/core/class-gutenberg-editor-css.php'; require_once ASTRA_THEME_DIR . 'inc/core/class-astra-wp-editor-css.php'; require_once ASTRA_THEME_DIR . 'inc/dynamic-css/block-editor-compatibility.php'; require_once ASTRA_THEME_DIR . 'inc/dynamic-css/inline-on-mobile.php'; require_once ASTRA_THEME_DIR . 'inc/dynamic-css/content-background.php'; require_once ASTRA_THEME_DIR . 'inc/dynamic-css/dark-mode.php'; require_once ASTRA_THEME_DIR . 'inc/class-astra-dynamic-css.php'; require_once ASTRA_THEME_DIR . 'inc/class-astra-global-palette.php'; // Enable NPS Survey only if the starter templates version is < 4.3.7 or > 4.4.4 to prevent fatal error. if ( ! defined( 'ASTRA_SITES_VER' ) || version_compare( ASTRA_SITES_VER, '4.3.7', '<' ) || version_compare( ASTRA_SITES_VER, '4.4.4', '>' ) ) { // NPS Survey Integration require_once ASTRA_THEME_DIR . 'inc/lib/class-astra-nps-notice.php'; require_once ASTRA_THEME_DIR . 'inc/lib/class-astra-nps-survey.php'; } /** * Custom template tags for this theme. */ require_once ASTRA_THEME_DIR . 'inc/core/class-astra-attr.php'; require_once ASTRA_THEME_DIR . 'inc/template-tags.php'; require_once ASTRA_THEME_DIR . 'inc/widgets.php'; require_once ASTRA_THEME_DIR . 'inc/core/theme-hooks.php'; require_once ASTRA_THEME_DIR . 'inc/admin-functions.php'; require_once ASTRA_THEME_DIR . 'inc/core/sidebar-manager.php'; /** * Markup Functions */ require_once ASTRA_THEME_DIR . 'inc/markup-extras.php'; require_once ASTRA_THEME_DIR . 'inc/extras.php'; require_once ASTRA_THEME_DIR . 'inc/blog/blog-config.php'; require_once ASTRA_THEME_DIR . 'inc/blog/blog.php'; require_once ASTRA_THEME_DIR . 'inc/blog/single-blog.php'; /** * Markup Files */ require_once ASTRA_THEME_DIR . 'inc/template-parts.php'; require_once ASTRA_THEME_DIR . 'inc/class-astra-loop.php'; require_once ASTRA_THEME_DIR . 'inc/class-astra-mobile-header.php'; /** * Functions and definitions. */ require_once ASTRA_THEME_DIR . 'inc/class-astra-after-setup-theme.php'; // Required files. require_once ASTRA_THEME_DIR . 'inc/core/class-astra-admin-helper.php'; require_once ASTRA_THEME_DIR . 'inc/schema/class-astra-schema.php'; /* Setup API */ require_once ASTRA_THEME_DIR . 'admin/includes/class-astra-api-init.php'; if ( is_admin() ) { /** * Admin Menu Settings */ require_once ASTRA_THEME_DIR . 'inc/core/class-astra-admin-settings.php'; require_once ASTRA_THEME_DIR . 'admin/class-astra-admin-loader.php'; require_once ASTRA_THEME_DIR . 'inc/lib/astra-notices/class-astra-notices.php'; } /** * Metabox additions. */ require_once ASTRA_THEME_DIR . 'inc/metabox/class-astra-meta-boxes.php'; require_once ASTRA_THEME_DIR . 'inc/metabox/class-astra-meta-box-operations.php'; require_once ASTRA_THEME_DIR . 'inc/metabox/class-astra-elementor-editor-settings.php'; /** * Customizer additions. */ require_once ASTRA_THEME_DIR . 'inc/customizer/class-astra-customizer.php'; /** * Astra Modules. */ require_once ASTRA_THEME_DIR . 'inc/modules/posts-structures/class-astra-post-structures.php'; require_once ASTRA_THEME_DIR . 'inc/modules/related-posts/class-astra-related-posts.php'; /** * Compatibility */ require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-gutenberg.php'; require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-jetpack.php'; require_once ASTRA_THEME_DIR . 'inc/compatibility/woocommerce/class-astra-woocommerce.php'; require_once ASTRA_THEME_DIR . 'inc/compatibility/edd/class-astra-edd.php'; require_once ASTRA_THEME_DIR . 'inc/compatibility/lifterlms/class-astra-lifterlms.php'; require_once ASTRA_THEME_DIR . 'inc/compatibility/learndash/class-astra-learndash.php'; require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-beaver-builder.php'; require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-bb-ultimate-addon.php'; require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-contact-form-7.php'; require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-visual-composer.php'; require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-site-origin.php'; require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-gravity-forms.php'; require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-bne-flyout.php'; require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-ubermeu.php'; require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-divi-builder.php'; require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-amp.php'; require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-yoast-seo.php'; require_once ASTRA_THEME_DIR . 'inc/compatibility/surecart/class-astra-surecart.php'; require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-starter-content.php'; require_once ASTRA_THEME_DIR . 'inc/addons/transparent-header/class-astra-ext-transparent-header.php'; require_once ASTRA_THEME_DIR . 'inc/addons/breadcrumbs/class-astra-breadcrumbs.php'; require_once ASTRA_THEME_DIR . 'inc/addons/scroll-to-top/class-astra-scroll-to-top.php'; require_once ASTRA_THEME_DIR . 'inc/addons/heading-colors/class-astra-heading-colors.php'; require_once ASTRA_THEME_DIR . 'inc/builder/class-astra-builder-loader.php'; // Elementor Compatibility requires PHP 5.4 for namespaces. if ( version_compare( PHP_VERSION, '5.4', '>=' ) ) { require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-elementor.php'; require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-elementor-pro.php'; require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-web-stories.php'; } // Beaver Themer compatibility requires PHP 5.3 for anonymous functions. if ( version_compare( PHP_VERSION, '5.3', '>=' ) ) { require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-beaver-themer.php'; } require_once ASTRA_THEME_DIR . 'inc/core/markup/class-astra-markup.php'; /** * Load deprecated functions */ require_once ASTRA_THEME_DIR . 'inc/core/deprecated/deprecated-filters.php'; require_once ASTRA_THEME_DIR . 'inc/core/deprecated/deprecated-hooks.php'; require_once ASTRA_THEME_DIR . 'inc/core/deprecated/deprecated-functions.php'; comercializadora wy https://validator.w3.org/feed/docs/rss2.html Incredibile_potenziale_e_spinsup_per_trasformare_radicalmente_ogni_strategia_di Profitable_strategies_for_newcomers_with_spinline_casino_and_boosted_winnings_po Increíbles_momentos_para_disfrutar_con_sol_casino_y_novedosas_estrategias_de_ju Atractivos_bonos_y_https_sol-casino5_es_para_disfrutar_juegos_de_azar_online_sin Wonderful_textiles_inspire_unique_designs_around_lolajack_for_discerning_collect Increíble_diversión_y_premios_te_esperan_en_sol_casino_tu_destino_ideal Vertrauenswürdige_Informationen_über_https_snatch-casinos_com_de_für_sicheres Effektive_Strategien_für_Spieler_nutzen_die_Plattform_cazimbos_com_de_optimal Interesantes_opciones_de_juego_y_bonos_disponibles_en_abigcandycasino_com_es_par Fantastisnya_peluang_menang_dan_keseruan_tak_tertandingi_bersama_pragmatic_play Geniş_yelpazeli_bahis_seçenekleri_ve_1win_ile_kazancınızı_artırmanın_yoll Experiências_incríveis_de_apostas_online_com_1win_e_bônus_exclusivos_para_voc Segura_plataforma_y_mystake_ofrecen_beneficios_únicos_para_nuevos_usuarios Erfolgreiche_Strategien_mit_win_beatz_casino_für_mehr_Spielspaß_und_Gewinne Inspanningen_met_uspin_leveren_heldere_inzichten_en_maximale_efficiëntie_op Zukunftsorientierte_Soundsysteme_und_innovative_Technologie_rund_um_win_beatz_f Remarkable_tension_builds_around_crash_casino_for_daring_players_seeking_quick_w Απίστευτη_εμπειρία_καζίνο_με_nine_casino_και_κέρ Essential_guidance_for_navigating_online_casinos_with_funbet_and_maximizing_winn Gedetailleerde_analyses_en_spin_maya_onthullen_verborgen_patronen_in_dataverwerk Szórakoztató_online_kalandok_a_modern_nv_casino_kínálatában_játékosoknak Inicio Reliable_insights_and_https_kin-bets_net_for_informed_sports_betting_decisions_t Vibrant_forecasts_detail_a_lucky_wave_and_influence_for_skilled_surfers_today Spectaculaire_engouement_et_bigclash_révolutionnent_les_compétitions_esports_e Kényelmes_szórakozásra_a_modern_nvcasino_kínálatában_rejlő_lehetőségekk Current_pathways_from_ocean_eddies_to_the_heart_of_pacific_spin_formation Essential_insights_for_savvy_players_with_mystake_and_detailed_game_analysis Rozrywka_online_osiąga_nowy_poziom_dzięki_fascynującemu_kasynie_nine_casino_i Affidabile_confronto_dettagliato_e_review_kinbet_per_unesperienza_di_gioco_ottim Authentique_mystake_explore_opportunités_exceptionnelles_et_gains_potentiels_po व_भ_न_न_ख_ल_क_अन_भव_1win_क_म_ध_यम_स_र_म Güvenilir_kaynaklardan_pinco_giriş_yaparak_ayrıcalıklı_dünyaya_adım_atın Komfortowy_przewodnik_po_świecie_gier_online_z_nv_casino_dla_wymagających_grac Erfolgreiche_Strategien_rund_um_nv_casino_für_ambitionierte_Spieler_meistern Uitgebreide_mogelijkheden_voor_wedden_en_winnen_met_amonbet_bieden_veel_plezier Möhtəşəm_seçimlərlə_tanışın_pinco_sizin_üçün_yeni_imkanlar_açır_v Gözəl_xanımlar_üçün_vintage_pinup_stilinin_ən_şık_variantları_və_tari Genuine_excitement_awaits_with_casino_lab_and_elevated_gaming_experiences Remarkable_access_and_lucky_wave_casino_login_for_seamless_gaming_experiences Spokojna_analiza_i_Vavada_casino_pokażą_jak_zwiększyć_szanse_na_wygraną_w_k مختلف_حکمت_عملیوں_کے_ساتھ_b9_game_کھیلنے_کے_دلچ Technologie_en_de_innovatieve_toepassingen_van_westace_binnen_uw_bedrijfsvoering Ελκυστικές_προσφορές_και_pistolo_casino_bonus_για_κά Emocje_i_adrenalinę_podkręcają_magnetic_slots_z_każdym_trafionym_zestawem_sy Genuine_opportunities_unfold_from_beginner_luck_to_expert_play_with_pacific_spin Εξαιρετική_ακρίβεια_και_λεπτομέρεια_με_το_pi-21003466 Aktuelle_Strategien_für_Gewinnchancen_mit_nv_casino_und_sicheren_Zahlungen_onli Avontuur_ontketend_door_spin_maya_casino_met_spannende_mogelijkheden_en_grote_pr Strategic_gameplay_and_casino_crash_game_rewards_for_daring_players_seeking_big