| 1 | <?php |
|---|
| 2 | /** |
|---|
| 3 | * Astra functions and definitions |
|---|
| 4 | * |
|---|
| 5 | * @link https://developer.wordpress.org/themes/basics/theme-functions/ |
|---|
| 6 | * |
|---|
| 7 | * @package Astra |
|---|
| 8 | * @since 1.0.0 |
|---|
| 9 | */ |
|---|
| 10 | |
|---|
| 11 | /** |
|---|
| 12 | * Define Constants |
|---|
| 13 | */ |
|---|
| 14 | define( 'ASTRA_THEME_VERSION', '1.6.8' ); |
|---|
| 15 | define( 'ASTRA_THEME_SETTINGS', 'astra-settings' ); |
|---|
| 16 | define( 'ASTRA_THEME_DIR', trailingslashit( get_template_directory() ) ); |
|---|
| 17 | define( 'ASTRA_THEME_URI', trailingslashit( esc_url( get_template_directory_uri() ) ) ); |
|---|
| 18 | |
|---|
| 19 | /** |
|---|
| 20 | * Update theme |
|---|
| 21 | */ |
|---|
| 22 | require_once ASTRA_THEME_DIR . 'inc/theme-update/class-astra-theme-update.php'; |
|---|
| 23 | require_once ASTRA_THEME_DIR . 'inc/theme-update/class-astra-pb-compatibility.php'; |
|---|
| 24 | |
|---|
| 25 | /** |
|---|
| 26 | * Load theme hooks |
|---|
| 27 | */ |
|---|
| 28 | require_once ASTRA_THEME_DIR . 'inc/core/class-astra-theme-options.php'; |
|---|
| 29 | require_once ASTRA_THEME_DIR . 'inc/core/class-theme-strings.php'; |
|---|
| 30 | |
|---|
| 31 | /** |
|---|
| 32 | * Fonts Files |
|---|
| 33 | */ |
|---|
| 34 | require_once ASTRA_THEME_DIR . 'inc/customizer/class-astra-font-families.php'; |
|---|
| 35 | if ( is_admin() ) { |
|---|
| 36 | require_once ASTRA_THEME_DIR . 'inc/customizer/class-astra-fonts-data.php'; |
|---|
| 37 | } |
|---|
| 38 | |
|---|
| 39 | require_once ASTRA_THEME_DIR . 'inc/customizer/class-astra-fonts.php'; |
|---|
| 40 | |
|---|
| 41 | require_once ASTRA_THEME_DIR . 'inc/core/common-functions.php'; |
|---|
| 42 | require_once ASTRA_THEME_DIR . 'inc/core/class-astra-walker-page.php'; |
|---|
| 43 | require_once ASTRA_THEME_DIR . 'inc/core/class-astra-enqueue-scripts.php'; |
|---|
| 44 | require_once ASTRA_THEME_DIR . 'inc/core/class-gutenberg-editor-css.php'; |
|---|
| 45 | require_once ASTRA_THEME_DIR . 'inc/class-astra-dynamic-css.php'; |
|---|
| 46 | |
|---|
| 47 | /** |
|---|
| 48 | * Custom template tags for this theme. |
|---|
| 49 | */ |
|---|
| 50 | require_once ASTRA_THEME_DIR . 'inc/core/class-astra-attr.php'; |
|---|
| 51 | require_once ASTRA_THEME_DIR . 'inc/template-tags.php'; |
|---|
| 52 | |
|---|
| 53 | require_once ASTRA_THEME_DIR . 'inc/widgets.php'; |
|---|
| 54 | require_once ASTRA_THEME_DIR . 'inc/core/theme-hooks.php'; |
|---|
| 55 | require_once ASTRA_THEME_DIR . 'inc/admin-functions.php'; |
|---|
| 56 | require_once ASTRA_THEME_DIR . 'inc/core/sidebar-manager.php'; |
|---|
| 57 | |
|---|
| 58 | /** |
|---|
| 59 | * Markup Functions |
|---|
| 60 | */ |
|---|
| 61 | require_once ASTRA_THEME_DIR . 'inc/extras.php'; |
|---|
| 62 | require_once ASTRA_THEME_DIR . 'inc/blog/blog-config.php'; |
|---|
| 63 | require_once ASTRA_THEME_DIR . 'inc/blog/blog.php'; |
|---|
| 64 | require_once ASTRA_THEME_DIR . 'inc/blog/single-blog.php'; |
|---|
| 65 | /** |
|---|
| 66 | * Markup Files |
|---|
| 67 | */ |
|---|
| 68 | require_once ASTRA_THEME_DIR . 'inc/template-parts.php'; |
|---|
| 69 | require_once ASTRA_THEME_DIR . 'inc/class-astra-loop.php'; |
|---|
| 70 | require_once ASTRA_THEME_DIR . 'inc/class-astra-mobile-header.php'; |
|---|
| 71 | |
|---|
| 72 | /** |
|---|
| 73 | * Functions and definitions. |
|---|
| 74 | */ |
|---|
| 75 | require_once ASTRA_THEME_DIR . 'inc/class-astra-after-setup-theme.php'; |
|---|
| 76 | |
|---|
| 77 | // Required files. |
|---|
| 78 | require_once ASTRA_THEME_DIR . 'inc/core/class-astra-admin-helper.php'; |
|---|
| 79 | |
|---|
| 80 | if ( is_admin() ) { |
|---|
| 81 | |
|---|
| 82 | /** |
|---|
| 83 | * Admin Menu Settings |
|---|
| 84 | */ |
|---|
| 85 | require_once ASTRA_THEME_DIR . 'inc/core/class-astra-admin-settings.php'; |
|---|
| 86 | require_once ASTRA_THEME_DIR . 'inc/lib/notices/class-astra-notices.php'; |
|---|
| 87 | |
|---|
| 88 | /** |
|---|
| 89 | * Metabox additions. |
|---|
| 90 | */ |
|---|
| 91 | require_once ASTRA_THEME_DIR . 'inc/metabox/class-astra-meta-boxes.php'; |
|---|
| 92 | } |
|---|
| 93 | |
|---|
| 94 | require_once ASTRA_THEME_DIR . 'inc/metabox/class-astra-meta-box-operations.php'; |
|---|
| 95 | |
|---|
| 96 | |
|---|
| 97 | /** |
|---|
| 98 | * Customizer additions. |
|---|
| 99 | */ |
|---|
| 100 | require_once ASTRA_THEME_DIR . 'inc/customizer/class-astra-customizer.php'; |
|---|
| 101 | |
|---|
| 102 | |
|---|
| 103 | /** |
|---|
| 104 | * Compatibility |
|---|
| 105 | */ |
|---|
| 106 | require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-jetpack.php'; |
|---|
| 107 | require_once ASTRA_THEME_DIR . 'inc/compatibility/woocommerce/class-astra-woocommerce.php'; |
|---|
| 108 | require_once ASTRA_THEME_DIR . 'inc/compatibility/edd/class-astra-edd.php'; |
|---|
| 109 | require_once ASTRA_THEME_DIR . 'inc/compatibility/lifterlms/class-astra-lifterlms.php'; |
|---|
| 110 | require_once ASTRA_THEME_DIR . 'inc/compatibility/learndash/class-astra-learndash.php'; |
|---|
| 111 | require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-beaver-builder.php'; |
|---|
| 112 | require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-bb-ultimate-addon.php'; |
|---|
| 113 | require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-contact-form-7.php'; |
|---|
| 114 | require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-visual-composer.php'; |
|---|
| 115 | require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-site-origin.php'; |
|---|
| 116 | require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-gravity-forms.php'; |
|---|
| 117 | require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-bne-flyout.php'; |
|---|
| 118 | require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-ubermeu.php'; |
|---|
| 119 | require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-divi-builder.php'; |
|---|
| 120 | require_once ASTRA_THEME_DIR . 'inc/addons/transparent-header/class-astra-ext-transparent-header.php'; |
|---|
| 121 | |
|---|
| 122 | // Elementor Compatibility requires PHP 5.4 for namespaces. |
|---|
| 123 | if ( version_compare( PHP_VERSION, '5.4', '>=' ) ) { |
|---|
| 124 | require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-elementor.php'; |
|---|
| 125 | require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-elementor-pro.php'; |
|---|
| 126 | } |
|---|
| 127 | |
|---|
| 128 | // Beaver Themer compatibility requires PHP 5.3 for anonymus functions. |
|---|
| 129 | if ( version_compare( PHP_VERSION, '5.3', '>=' ) ) { |
|---|
| 130 | require_once ASTRA_THEME_DIR . 'inc/compatibility/class-astra-beaver-themer.php'; |
|---|
| 131 | } |
|---|
| 132 | |
|---|
| 133 | /** |
|---|
| 134 | * Load deprecated functions |
|---|
| 135 | */ |
|---|
| 136 | require_once ASTRA_THEME_DIR . 'inc/core/deprecated/deprecated-filters.php'; |
|---|
| 137 | require_once ASTRA_THEME_DIR . 'inc/core/deprecated/deprecated-hooks.php'; |
|---|
| 138 | require_once ASTRA_THEME_DIR . 'inc/core/deprecated/deprecated-functions.php'; |
|---|