/** * 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 Inicio Reasons Editable Forms are Changing the Game for DIY Sellers Digitale Identitätsprüfung im Zeitalter des Datenschutzes La montée en puissance des stratégies de Tower Rush dans l’e-sport compétitif Verlässliche Identitätsprüfung in Online Casinos: Trends, Herausforderungen und Chancen Vertrauenswürdige Online-Casino-Überprüfungen: Die Bedeutung der schnellen Verifizierung Revolution im Identitätsnachweis: Effizienz, Sicherheit und Nutzerfreundlichkeit im Fokus Die Zukunft der Online-Casinos: Transparenz, Sicherheit und die Wahrheit über No-ID Casinos Innovation et Automatisation dans la Cuisine Professionnelle : La Nouvelle Ère des Interfaces Intuitives Innovations Urbaines : La Transformation Visuelle de Nos Villes Modernes Optimisation de la Construction Digitale : Analyse du”Triple Build Feature” Optimisation des stratégies de jeu : L’importance du multiplicateur x7 dans la roulette Dans un secteur aussi technique et réglementé que la construction, la simplicité apparente est souve La gestion proactive du risque dans l’industrie financière : stratégies et outils pour minimiser les dangers Réinventer la Logistique : L’impact des Technologies Modernes sur la Manipulation des Objets Lourds Melbet APK Maroc comment tlcharger lapplication de casino en ligne.344 – копія Understanding High-Variance Slot Machines: Analyzing Olympus Gates and the Impressive Max Wins Navigating Cryptocurrency Investments: Embracing Volatility for Greater Rewards Harnessing the Power of Exponential Growth: The 1000x Multiplier in Modern Investment Strategies The Future of Digital Asset Security: A Deep Dive into Advanced Cryptocurrency Safeguards The Evolution of High-Risk, High-Reward Slot Experiences: A Deep Dive into the Zeus Slot with 1000x Multipliers Strategic Insights into Ante Bet Options in Modern Video Slot Gameplay De Rol van Betrouwbare Gidsen bij het Verkennen van Nieuwe Spelbegeleidingstechnieken De Evolutie van Online Fruitmachines: Strategisch Spelen en Winsten Maximaliseren De Fine Tuning van Effectieve Gokstrategieën: Grenzen en Innovaties Innovatieve Benaderingen voor Slotvorming in Digital Security: Het Belang van NIBFO Het artistieke en culturele belang van hetspel met de 8-zackige sterren De Evolutie van Online Gokkasten: Een Analyse van Trends en Nieuwe Ontwikkelingen Innovatieve Geautomatiseerde Technologieën in de Ruimtevaart: De Rol van Vertrouwde Automaten De Toekomst van Financiële Educatie: Waarom Transparantie en Toegankelijkheid Kritisch zijn De Evolutie van de Modern Slotmachine: Innovatie, Thema’s en Speelervaring De Evolutie en Impact van Expanding Wilds in Modern Slotspellen Verantwoord Gokken in het Digitale Tijdperk: Het Belang van Inzetlimieten en Regulering De evolutie van slotmachines: Strategisch inzicht in Wilds en spelelementen Refining Online Slot Game Evaluations: The Role of Comprehensive Gameplay Reviews Scrutinising the Evolution of Online Slot Games: The Case of Fishin’ Frenzy Elevating the Digital Casino Experience: The Role of Themed Slot Games in Modern Gaming From Classics to Innovation: The Evolution of Theme-Driven Slot Games Innovations and Trends in Online Slot Machines: Prioritising Themed Gameplay and Player Returns The Evolution of Theme-Specific Slot Games and the Appeal of Immersive Fishin’ Experiences Harnessing Modern Trends in Slot Gaming: Personal Preferences and Industry Insights The Strategic Evolution of Online Slots: How Game Mechanics and Industry Innovation Shape Player Engagement The Evolution of Online Slot Gaming: Industry Insights, Player Engagement, and Future Trends Strategic Insights into Digital Slot Gaming: Elevating User Engagement and Revenue Streams The Evolution of Treasure-Driven Slot Features in Online Casinos The online gambling industry has undergone a transformative evolution over the past decade, largely The Future of Digital Payment Methods in Online Gambling: Exploring Phone Billing Options Innovating Digital Certification Processes: A Look into Modern Solutions 5bet Casino ajoute une nouvelle machine a sous tres populaire a sa collection JasminSlots Casino berschlagt den Wettbewerb mit neuen Bonusangeboten