summaryrefslogtreecommitdiff
path: root/functions.php
diff options
context:
space:
mode:
Diffstat (limited to 'functions.php')
-rw-r--r--functions.php174
1 files changed, 174 insertions, 0 deletions
diff --git a/functions.php b/functions.php
new file mode 100644
index 0000000..39da06e
--- /dev/null
+++ b/functions.php
@@ -0,0 +1,174 @@
+<?php
+/**
+ * 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', '3.6.5' );
+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() ) ) );
+
+
+/**
+ * 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', '3.5.5' );
+
+/**
+ * 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';
+
+/**
+ * Update theme
+ */
+require_once ASTRA_THEME_DIR . 'inc/theme-update/class-astra-theme-update.php';
+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';
+require_once ASTRA_THEME_DIR . 'inc/theme-update/class-astra-pb-compatibility.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/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/dynamic-css/block-editor-compatibility.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/dynamic-css/inline-on-mobile.php';
+require_once ASTRA_THEME_DIR . 'inc/class-astra-dynamic-css.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';
+
+if ( is_admin() ) {
+
+ /**
+ * Admin Menu Settings
+ */
+ require_once ASTRA_THEME_DIR . 'inc/core/class-astra-admin-settings.php';
+ require_once ASTRA_THEME_DIR . 'inc/lib/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';
+
+/**
+ * Customizer additions.
+ */
+require_once ASTRA_THEME_DIR . 'inc/customizer/class-astra-customizer.php';
+
+/**
+ * Astra Modules.
+ */
+require_once ASTRA_THEME_DIR . 'inc/modules/related-posts/class-astra-related-posts.php';
+
+/**
+ * Compatibility
+ */
+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/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/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 anonymus 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';