/** * 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 best name for dog 68 Darmowe kody promocyjne Vavada 2026 najlepsze oferty Зарегистрироваться в вавада Вавада рабочее на сегодня зеркало Inicio Древние тайны и золотой дождь как покорить фортуну с olimp com и ощутить власть Мидаса. – копія Вавада зеркало на сегодня Mastering Modern European Dating: A Warm Guide to Meaningful Connections Unlocking the Chemistry of Connection with Datingfortodaysman.Com Vavada casino зеркало только проверенные линки Portefeuilles numériques et jeux en ligne : comment les casinos d’été assurent des paiements sûrs et ultra‑rapides aws generative ai 1 Estate Universitaria: Come i Casinò Online con Dealer Live Possono Sostenere il Budget Studentesco, Offrire Divertimento Responsabile e Massimizzare le Promo Estive con Strategie di Gioco Low‑Cost senza sacrificare gli studi Вавда Вавада казино зеркало 2026 официальный сайт азартных игр Вавада официальный сайт лучшие азартные игры и бонусы Estate Universitaria: Come i Casinò Online con Dealer Live Possono Sostenere il Budget Studentesco, Offrire Divertimento Responsabile e Massimizzare le Promo Estive con Strategie di Gioco Low‑Cost senza sacrificare gli studi Лучшие бонусы и промокоды онлайн казино 2026 года за регистрацию Промокод без отыгрыша онлайн казино Драгон Мани официальный сайт онлайн-казино Dragon Money драгон мани официальный сайт 8 Essential Profile‑Optimization Tips for Holiday Dating on Sakuradating.Org Inside the AI‑Powered Safety Engine of Datinghelpblog.Com Riobet Casino Официальный сайт Риобет Регистрация, бонусы, вход и зеркало зеркальная страница риобет O Slimking Casino é uma boa escolha para jogadores recreativos como eu 1xBet App Android iOS Free Download APK + iPhone Version145970 Slimking Casino új bónuszokkal várja a játékosokat Writing a Character Letter: Best Practices for Legal and Personal Contexts 10 лучших казино онлайн 2026 сравнение платформ и бонусных программ.2478 Navigating Emergency Situations: The Role of Power of Attorney Dalle Monete d’Oro ai Mega‑Jackpot: Come le Slot Classiche e Moderne Stanno Rivoluzionando l’Industria iGaming, Attraendo Milioni di Giocatori con Jackpot da Record e Innovazioni Tecnologiche in tempo reale Dalle Monete d’Oro ai Mega‑Jackpot: Come le Slot Classiche e Moderne Stanno Rivoluzionando l’Industria iGaming, Attraendo Milioni di Giocatori con Jackpot da Record e Innovazioni Tecnologiche in tempo reale Dalle Monete d’Oro ai Mega‑Jackpot: Come le Slot Classiche e Moderne Stanno Rivoluzionando l’Industria iGaming, Attraendo Milioni di Giocatori con Jackpot da Record e Innovazioni Tecnologiche in tempo reale Roulette Digitale 2024‑2025: Come i Bonus Influenzano le Strategie dei Principali Provider, Analisi delle Offerte, Tendenze di Mercato e Prospettive Future per Giocatori Italiani con focus su promozioni, requisiti di wagering e impatto delle normative ADM Roulette Digitale 2024‑2025: Come i Bonus Influenzano le Strategie dei Principali Provider, Analisi delle Offerte, Tendenze di Mercato e Prospettive Future per Giocatori Italiani con focus su promozioni, requisiti di wagering e impatto delle normative ADM Living Will vs. Healthcare Proxy: Understanding the Differences Dalle Monete d’Oro ai Mega‑Jackpot: Come le Slot Classiche e Moderne Stanno Rivoluzionando l’Industria iGaming, Attraendo Milioni di Giocatori con Jackpot da Record e Innovazioni Tecnologiche in tempo reale 1xbet зеркало Рабочие зеркала 1хбет на сегодня Официальный доступ 1xbet зеркало на сегодня Вход в личный кабинет Официальный сайт 1XBET 1xbet casino 1xBet официальный сайт букмекера Регистрация, зеркала, бонусы 2025 1xbet зеркало сегодня Ist Betcleo Casino sicher und wie gut sind die Auszahlungen 1xBet зеркало рабочее Вход на официальный сайт 1хбет 1xbet зеркало Dalle Monete d’Oro ai Mega‑Jackpot: Come le Slot Classiche e Moderne Stanno Rivoluzionando l’Industria iGaming, Attraendo Milioni di Giocatori con Jackpot da Record e Innovazioni Tecnologiche in tempo reale Approaches to Approach Divorce Settlements with a Clear Mind: Tips for Success Best Practices to Protect Yourself Legally When Buying a Used Vehicle Dalle Monete d’Oro ai Mega‑Jackpot: Come le Slot Classiche e Moderne Stanno Rivoluzionando l’Industria iGaming, Attraendo Milioni di Giocatori con Jackpot da Record e Innovazioni Tecnologiche in tempo reale Казино Риобет официальный сайт регистрация, личный кабинет Riobet риобет казино зеркало на сегодня 1xBet for Android Download the APK from Uptodown1455 Roulette Digitale 2024‑2025: Come i Bonus Influenzano le Strategie dei Principali Provider, Analisi delle Offerte, Tendenze di Mercato e Prospettive Future per Giocatori Italiani con focus su promozioni, requisiti di wagering e impatto delle normative ADM . . Roulette Digitale 2024‑2025: Come i Bonus Influenzano le Strategie dei Principali Provider, Analisi delle Offerte, Tendenze di Mercato e Prospettive Future per Giocatori Italiani con focus su promozioni, requisiti di wagering e impatto delle normative ADM