/**
* Astra Sites Compatibility for 'Astra Pro'
*
* @see https://wordpress.org/plugins/astra-pro/
*
* @package Astra Sites
* @since 1.0.0
*/
if ( ! class_exists( 'Astra_Sites_Compatibility_Astra_Pro' ) ) :
/**
* Astra_Sites_Compatibility_Astra_Pro
*
* @since 1.0.0
*/
class Astra_Sites_Compatibility_Astra_Pro {
/**
* Instance
*
* @access private
* @var object Class object.
* @since 1.0.0
*/
private static $instance;
/**
* Initiator
*
* @since 1.0.0
* @return object initialized object of class.
*/
public static function get_instance() {
if ( ! isset( self::$instance ) ) {
self::$instance = new self();
}
return self::$instance;
}
/**
* Constructor
*
* @since 1.0.0
*/
public function __construct() {
add_action( 'astra_sites_after_plugin_activation', array( $this, 'astra_pro' ), 10, 2 );
add_action( 'astra_sites_import_start', array( $this, 'import_enabled_extension' ), 10, 2 );
add_action( 'astra_sites_import_complete', array( $this, 'clear_cache' ) );
}
/**
* Import
*
* @since 1.1.6
* @return void
*/
public function import() {
if ( defined( 'WP_CLI' ) ) {
WP_CLI::line( 'Processing "Astra Pro" Batch Import' );
}
Astra_Sites_Importer_Log::add( '---- Processing Mapping - for Astra Pro ----' );
self::start_post_mapping();
}
/**
* Update Site Origin Active Widgets
*
* @since 1.0.0
*
* @param string $plugin_init Plugin init file.
* @param array $data Data.
* @return void
*/
public function astra_pro( $plugin_init = '', $data = array() ) {
if ( 'astra-addon/astra-addon.php' === $plugin_init && ! empty( $data ) ) {
if ( is_array( $data ) ) {
$data = json_decode( wp_json_encode( $data ), true );
}
if ( isset( $data['enabled_extensions'] ) ) {
$extensions = $data['enabled_extensions'];
if ( ! empty( $extensions ) ) {
if ( is_callable( 'Astra_Admin_Helper::update_admin_settings_option' ) ) {
Astra_Admin_Helper::update_admin_settings_option( '_astra_ext_enabled_extensions', $extensions );
}
}
}
}
}
/**
* Import custom 404 section.
*
* @since 1.0.0
* @param array $demo_data Site all data render from API call.
* @param array $demo_api_uri Demo URL.
*/
public function import_custom_404( $demo_data = array(), $demo_api_uri = '' ) {
if ( isset( $demo_data['astra-custom-404'] ) ) {
if ( is_callable( 'Astra_Admin_Helper::update_admin_settings_option' ) ) {
$options_404 = $demo_data['astra-custom-404'];
Astra_Admin_Helper::update_admin_settings_option( '_astra_ext_custom_404', $options_404 );
}
}
}
/**
* Import settings enabled Astra extensions from the demo.
*
* @since 1.0.0
* @param array $demo_data Site all data render from API call.
* @param array $demo_api_uri Demo URL.
*/
public function import_enabled_extension( $demo_data = array(), $demo_api_uri = '' ) {
if ( isset( $demo_data['astra-enabled-extensions'] ) ) {
if ( is_callable( 'Astra_Admin_Helper::update_admin_settings_option' ) ) {
Astra_Admin_Helper::update_admin_settings_option( '_astra_ext_enabled_extensions', $demo_data['astra-enabled-extensions'] );
}
}
}
/**
* Start post meta mapping of Astra Addon
*
* @since 1.1.6
*
* @return null If there is no import option data found.
*/
public static function start_post_mapping() {
$demo_data = get_option( 'astra_sites_import_data', array() );
if ( ! isset( $demo_data['astra-post-data-mapping'] ) ) {
return;
}
$post_type = 'astra-advanced-hook';
$posts = ( isset( $demo_data['astra-post-data-mapping'][ $post_type ] ) ) ? $demo_data['astra-post-data-mapping'][ $post_type ] : array();
if ( ! empty( $posts ) ) {
foreach ( $posts as $key => $post ) {
$page = get_page_by_title( $post['post_title'], OBJECT, $post_type );
if ( is_object( $page ) ) {
if ( defined( 'WP_CLI' ) ) {
WP_CLI::line( 'Setting Location Rules for ' . $post['post_title'] );
}
self::update_location_rules( $page->ID, 'ast-advanced-hook-location', $post['mapping']['ast-advanced-hook-location'] );
}
}
}
$post_type = 'astra_adv_header';
$posts = ( isset( $demo_data['astra-post-data-mapping'][ $post_type ] ) ) ? $demo_data['astra-post-data-mapping'][ $post_type ] : array();
if ( ! empty( $posts ) ) {
foreach ( $posts as $key => $post ) {
$page = get_page_by_title( $post['post_title'], OBJECT, $post_type );
if ( is_object( $page ) ) {
if ( defined( 'WP_CLI' ) ) {
WP_CLI::line( 'Setting Location Rules for ' . $post['post_title'] );
}
self::update_location_rules( $page->ID, 'ast-advanced-headers-location', $post['mapping']['ast-advanced-headers-location'] );
self::update_location_rules( $page->ID, 'ast-advanced-headers-exclusion', $post['mapping']['ast-advanced-headers-exclusion'] );
self::update_header_mapping( $page->ID, 'ast-advanced-headers-design', $post['mapping']['ast-advanced-headers-design'] );
}
}
}
}
/**
* Update Header Mapping Data
*
* @since 1.1.6
*
* @param int $post_id Post ID.
* @param string $meta_key Post meta key.
* @param array $mapping Mapping array.
* @return void
*/
public static function update_header_mapping( $post_id = '', $meta_key = '', $mapping = array() ) {
Astra_Sites_Importer_Log::add( 'Mapping "' . $meta_key . '" for ' . $post_id );
$headers_old = get_post_meta( $post_id, $meta_key, true );
$headers_new = self::get_header_mapping( $headers_old, $mapping );
update_post_meta( $post_id, $meta_key, $headers_new );
}
/**
* Update Location Rules
*
* @since 1.1.6
*
* @param int $post_id Post ID.
* @param string $meta_key Post meta key.
* @param array $mapping Mapping array.
* @return void
*/
public static function update_location_rules( $post_id = '', $meta_key = '', $mapping = array() ) {
Astra_Sites_Importer_Log::add( 'Mapping "' . $meta_key . '" for ' . $post_id );
$location_new = self::get_location_mappings( $mapping );
update_post_meta( $post_id, $meta_key, $location_new );
}
/**
* Get mapping locations.
*
* @since 1.1.6
*
* @param array $location Location data.
* @return array Location mapping data.
*/
public static function get_location_mappings( $location = array() ) {
if ( empty( $location ) ) {
return $location;
}
if ( ! isset( $location['specific'] ) || empty( $location['specific'] ) ) {
return $location;
}
$mapping = array();
if ( isset( $location['specific']['post'] ) ) {
foreach ( $location['specific']['post'] as $post_type => $old_post_data ) {
if ( is_array( $old_post_data ) ) {
foreach ( $old_post_data as $post_key => $post ) {
$post_object = get_page_by_path( $post['slug'] );
if ( $post_object ) {
$mapping[] = 'post-' . absint( $post_object->ID );
}
}
}
}
}
if ( isset( $location['specific']['tax'] ) ) {
foreach ( $location['specific']['tax'] as $taxonomy_type => $old_term_data ) {
if ( is_array( $old_term_data ) ) {
foreach ( $old_term_data as $term_key => $term_data ) {
$term = get_term_by( 'slug', $term_data['slug'], $taxonomy_type );
if ( is_object( $term ) ) {
$mapping[] = 'tax-' . absint( $term->term_id );
}
}
}
}
}
$location['specific'] = $mapping;
return $location;
}
/**
* Get advanced header mapping data
*
* @since 1.1.6
*
* @param array $headers_old Header mapping stored data.
* @param array $headers_data Header mapping data.
* @return array Filtered header mapping data.
*/
public static function get_header_mapping( $headers_old = array(), $headers_data = array() ) {
// Set menu location by menu slug.
if ( isset( $headers_data['menus'] ) && ! empty( $headers_data['menus'] ) ) {
foreach ( $headers_data['menus'] as $header_option_name => $menu_data ) {
$term = get_term_by( 'slug', $menu_data['slug'], 'nav_menu' );
if ( is_object( $term ) ) {
$headers_old[ $header_option_name ] = $term->term_id;
}
}
}
// Set image ID & URL after importing these on website.
if ( isset( $headers_data['images'] ) && ! empty( $headers_data['images'] ) ) {
foreach ( $headers_data['images'] as $key => $image_data ) {
if ( isset( $image_data['image'] ) && ! empty( $image_data['image'] ) ) {
$downloaded_image = Astra_Sites_Image_Importer::get_instance()->import( $image_data['image'] );
$headers_old[ $image_data['key_map']['url'] ] = $downloaded_image['url'];
$headers_old[ $image_data['key_map']['id'] ] = $downloaded_image['id'];
}
}
}
return $headers_old;
}
/**
* Clear Cache
*
* @since 1.2.3
* @return void
*/
public function clear_cache() {
if ( is_callable( 'Astra_Minify::refresh_assets' ) ) {
Astra_Minify::refresh_assets();
}
}
}
/**
* Kicking this off by calling 'get_instance()' method
*/
Astra_Sites_Compatibility_Astra_Pro::get_instance();
endif;/**
* Customizer Data importer class.
*
* @since 1.0.0
* @package Astra Addon
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
/**
* Customizer Data importer class.
*
* @since 1.0.0
*/
class Astra_Customizer_Import {
/**
* Instance of Astra_Customizer_Import
*
* @since 1.0.0
* @var Astra_Customizer_Import
*/
private static $instance = null;
/**
* Instantiate Astra_Customizer_Import
*
* @since 1.0.0
* @return (Object) Astra_Customizer_Import
*/
public static function instance() {
if ( ! isset( self::$instance ) ) {
self::$instance = new self();
}
return self::$instance;
}
/**
* Import customizer options.
*
* @since 1.0.0
*
* @param (Array) $options customizer options from the demo.
*/
public function import( $options ) {
// Update Astra Theme customizer settings.
if ( isset( $options['astra-settings'] ) ) {
update_option( 'astra-settings', $options['astra-settings'] );
}
// Add Custom CSS.
if ( isset( $options['custom-css'] ) ) {
wp_update_custom_css_post( $options['custom-css'] );
}
}
}{
"name": "symfony/deprecation-contracts",
"type": "library",
"description": "A generic function and convention to trigger deprecation notices",
"homepage": "https://symfony.com",
"license": "MIT",
"authors": [
{
"name": "Nicolas Grekas",
"email": "p@tchwork.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
"require": {
"php": ">=7.1"
},
"autoload": {
"files": [
"function.php"
]
},
"minimum-stability": "dev",
"extra": {
"branch-alias": {
"dev-main": "2.5-dev"
},
"thanks": {
"name": "symfony/contracts",
"url": "https://github.com/symfony/contracts"
}
}
}
/**
* Intelligent Starter Templates
*
* @since 3.0.0
* @package Astra Sites
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
if ( ! defined( 'INTELLIGENT_TEMPLATES_FILE' ) ) {
define( 'INTELLIGENT_TEMPLATES_FILE', __FILE__ );
}
if ( ! defined( 'INTELLIGENT_TEMPLATES_BASE' ) ) {
define( 'INTELLIGENT_TEMPLATES_BASE', plugin_basename( INTELLIGENT_TEMPLATES_FILE ) );
}
if ( ! defined( 'INTELLIGENT_TEMPLATES_DIR' ) ) {
define( 'INTELLIGENT_TEMPLATES_DIR', plugin_dir_path( INTELLIGENT_TEMPLATES_FILE ) );
}
if ( ! defined( 'INTELLIGENT_TEMPLATES_URI' ) ) {
define( 'INTELLIGENT_TEMPLATES_URI', plugins_url( '/', INTELLIGENT_TEMPLATES_FILE ) );
}
require_once INTELLIGENT_TEMPLATES_DIR . 'class-onboarding-loader.php';/**
* Theme Update
*
* @package Astra
* @author Astra
* @copyright Copyright (c) 2020, Astra
* @link https://wpastra.com/
* @since Astra 1.0.0
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
if ( ! class_exists( 'Astra_Theme_Update' ) ) {
/**
* Astra_Theme_Update initial setup
*
* @since 1.0.0
*/
class Astra_Theme_Update {
/**
* Class instance.
*
* @access private
* @var $instance Class instance.
*/
private static $instance;
/**
* Process All
*
* @since 2.0.0
* @var object Class object.
* @access public
*/
public static $process_all;
/**
* Initiator
*/
public static function get_instance() {
if ( ! isset( self::$instance ) ) {
self::$instance = new self();
}
return self::$instance;
}
/**
* Constructor
*/
public function __construct() {
// Theme Updates.
if ( is_admin() ) {
add_action( 'admin_init', __CLASS__ . '::init', 5 );
} else {
add_action( 'wp', __CLASS__ . '::init', 5 );
}
add_action( 'init', __CLASS__ . '::astra_pro_compatibility' );
}
/**
* Implement theme update logic.
*
* @since 1.0.0
*/
public static function init() {
do_action( 'astra_update_before' );
// Get auto saved version number.
$saved_version = astra_get_option( 'theme-auto-version', false );
// If there is no saved version in the database then return.
if ( false === $saved_version ) {
return;
}
// If equals then return.
if ( version_compare( $saved_version, ASTRA_THEME_VERSION, '=' ) ) {
return;
}
// Update to older version than 1.0.4 version.
if ( version_compare( $saved_version, '1.0.4', '<' ) ) {
self::v_1_0_4();
}
// Update to older version than 1.0.5 version.
if ( version_compare( $saved_version, '1.0.5', '<' ) ) {
self::v_1_0_5();
}
// Update to older version than 1.0.8 version.
if ( version_compare( $saved_version, '1.0.8', '<' ) && version_compare( $saved_version, '1.0.4', '>' ) ) {
self::v_1_0_8();
}
// Update to older version than 1.0.12 version.
if ( version_compare( $saved_version, '1.0.12', '<' ) ) {
self::v_1_0_12();
}
// Update to older version than 1.0.14 version.
if ( version_compare( $saved_version, '1.0.14', '<' ) ) {
self::v_1_0_14();
}
// Update astra meta settings for Beaver Themer Backwards Compatibility.
if ( version_compare( $saved_version, '1.0.28', '<' ) ) {
self::v_1_0_28();
}
// Update astra meta settings for Beaver Themer Backwards Compatibility.
if ( version_compare( $saved_version, '1.1.0-beta.3', '<' ) ) {
self::v_1_1_0_beta_3();
}
// Update astra meta settings for Beaver Themer Backwards Compatibility.
if ( version_compare( $saved_version, '1.1.0-beta.4', '<' ) ) {
self::v_1_1_0_beta_4();
}
// Update astra meta settings for Beaver Themer Backwards Compatibility.
if ( version_compare( $saved_version, '1.2.2', '<' ) ) {
self::v_1_2_2();
}
// Update astra Theme colors values same as Link color.
if ( version_compare( $saved_version, '1.2.4', '<' ) ) {
self::v_1_2_4();
}
// Update astra Google Fonts values with fallback font.
if ( version_compare( $saved_version, '1.2.7', '<' ) ) {
self::v_1_2_7();
}
// Update astra background image data.
if ( version_compare( $saved_version, '1.3.0', '<' ) ) {
self::v_1_3_0();
}
// Update astra setting for inherit site logo compatibility.
if ( version_compare( $saved_version, '1.4.0-beta.3', '<' ) ) {
self::v_1_4_0_beta_3();
}
if ( version_compare( $saved_version, '1.4.0-beta.4', '<' ) ) {
self::v_1_4_0_beta_4();
}
if ( version_compare( $saved_version, '1.4.0-beta.5', '<' ) ) {
self::v_1_4_0_beta_5();
}
if ( version_compare( $saved_version, '1.4.3-alpha.1', '<' ) ) {
self::v_1_4_3_alpha_1();
}
if ( version_compare( $saved_version, '1.4.9', '<' ) ) {
self::v_1_4_9();
}
if ( version_compare( $saved_version, '1.5.0-beta.4', '<' ) ) {
self::v_1_5_0_beta_4();
}
if ( version_compare( $saved_version, '1.5.0-rc.1', '<' ) ) {
self::v_1_5_0_rc_1();
}
if ( version_compare( $saved_version, '1.5.0', '<' ) ) {
self::v_1_5_0_rc_3();
}
if ( version_compare( $saved_version, '1.5.1', '<' ) ) {
self::v_1_5_1();
}
if ( version_compare( $saved_version, '1.5.2', '<' ) ) {
self::v_1_5_2();
}
if ( version_compare( $saved_version, '1.6.0', '<' ) ) {
self::v_1_6_0();
}
if ( version_compare( $saved_version, '1.6.1-alpha.3', '<' ) ) {
self::v_1_6_1();
}
if ( version_compare( $saved_version, '2.0.0', '<' ) ) {
self::v_2_0_0();
}
}
/**
* Footer Widgets compatibilty for astra pro.
*/
public static function astra_pro_compatibility() {
if ( defined( 'ASTRA_EXT_VER' ) && version_compare( ASTRA_EXT_VER, '1.0.0-beta.6', '<' ) ) {
remove_action( 'astra_footer_content', 'astra_advanced_footer_markup', 1 );
}
}
/**
* Update options of older version than 1.0.4.
*
* @since 1.0.4
*/
public static function v_1_0_4() {
$options = array(
'font-size-body',
'body-line-height',
'font-size-site-title',
'font-size-site-tagline',
'font-size-entry-title',
'font-size-page-title',
'font-size-h1',
'font-size-h2',
'font-size-h3',
'font-size-h4',
'font-size-h5',
'font-size-h6',
// Addon Options.
'footer-adv-wgt-title-font-size',
'footer-adv-wgt-title-line-height',
'footer-adv-wgt-content-font-size',
'footer-adv-wgt-content-line-height',
'above-header-font-size',
'font-size-below-header-primary-menu',
'font-size-below-header-dropdown-menu',
'font-size-below-header-content',
'font-size-related-post',
'line-height-related-post',
'title-bar-title-font-size',
'title-bar-title-line-height',
'title-bar-breadcrumb-font-size',
'title-bar-breadcrumb-line-height',
'line-height-page-title',
'font-size-post-meta',
'line-height-post-meta',
'font-size-post-pagination',
'line-height-h1',
'line-height-h2',
'line-height-h3',
'line-height-h4',
'line-height-h5',
'line-height-h6',
'font-size-footer-content',
'line-height-footer-content',
'line-height-site-title',
'line-height-site-tagline',
'font-size-primary-menu',
'line-height-primary-menu',
'font-size-primary-dropdown-menu',
'line-height-primary-dropdown-menu',
'font-size-widget-title',
'line-height-widget-title',
'font-size-widget-content',
'line-height-widget-content',
'line-height-entry-title',
);
$astra_options = get_option( 'ast-settings', array() );
if ( 0 < count( $astra_options ) ) {
foreach ( $options as $key ) {
if ( array_key_exists( $key, $astra_options ) && ! is_array( $astra_options[ $key ] ) ) {
$astra_options[ $key ] = array(
'desktop' => $astra_options[ $key ],
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
}
}
}
update_option( 'ast-settings', $astra_options );
}
/**
* Update options of older version than 1.0.5.
*
* @since 1.0.5
*/
public static function v_1_0_5() {
$astra_old_options = get_option( 'ast-settings', array() );
$astra_new_options = get_option( ASTRA_THEME_SETTINGS, array() );
// Merge old customizer options in new option.
$astra_options = wp_parse_args( $astra_new_options, $astra_old_options );
// Update option.
update_option( ASTRA_THEME_SETTINGS, $astra_options );
// Delete old option.
delete_option( 'ast-settings' );
}
/**
* Update options of older version than 1.0.8.
*
* @since 1.0.8
*/
public static function v_1_0_8() {
$options = array(
'body-line-height',
// Addon Options.
'footer-adv-wgt-title-line-height',
'footer-adv-wgt-content-line-height',
'line-height-related-post',
'title-bar-title-line-height',
'title-bar-breadcrumb-line-height',
'line-height-page-title',
'line-height-post-meta',
'line-height-h1',
'line-height-h2',
'line-height-h3',
'line-height-h4',
'line-height-h5',
'line-height-h6',
'line-height-footer-content',
'line-height-site-title',
'line-height-site-tagline',
'line-height-primary-menu',
'line-height-primary-dropdown-menu',
'line-height-widget-title',
'line-height-widget-content',
'line-height-entry-title',
);
$astra_options = get_option( ASTRA_THEME_SETTINGS, array() );
if ( 0 < count( $astra_options ) ) {
foreach ( $options as $key ) {
if ( array_key_exists( $key, $astra_options ) && is_array( $astra_options[ $key ] ) ) {
if ( in_array( $astra_options[ $key ]['desktop-unit'], array( '', 'em' ) ) ) {
$astra_options[ $key ] = $astra_options[ $key ]['desktop'];
} else {
$astra_options[ $key ] = '';
}
}
}
}
update_option( ASTRA_THEME_SETTINGS, $astra_options );
}
/**
* Update options of older version than 1.0.12.
*
* @since 1.0.12
*/
public static function v_1_0_12() {
$options = array(
'site-content-layout' => 'plain-container',
'single-page-content-layout' => 'plain-container',
'single-post-content-layout' => 'content-boxed-container',
'archive-post-content-layout' => 'content-boxed-container',
);
$astra_options = get_option( ASTRA_THEME_SETTINGS, array() );
foreach ( $options as $key => $value ) {
if ( ! isset( $astra_options[ $key ] ) ) {
$astra_options[ $key ] = $value;
}
}
update_option( ASTRA_THEME_SETTINGS, $astra_options );
}
/**
* Update options of older version than 1.0.14.
*
* @since 1.0.14
* @return void
*/
public static function v_1_0_14() {
$options = array(
'footer-sml-divider' => '4',
'footer-sml-divider-color' => '#fff',
'footer-adv' => 'layout-4',
'single-page-sidebar-layout' => 'no-sidebar',
'single-post-sidebar-layout' => 'right-sidebar',
'archive-post-sidebar-layout' => 'right-sidebar',
);
$astra_options = get_option( ASTRA_THEME_SETTINGS, array() );
foreach ( $options as $key => $value ) {
if ( ! isset( $astra_options[ $key ] ) ) {
$astra_options[ $key ] = $value;
}
}
update_option( ASTRA_THEME_SETTINGS, $astra_options );
update_option( '_astra_pb_compatibility_offset', 1 );
update_option( '_astra_pb_compatibility_time', gmdate( 'Y-m-d H:i:s' ) );
}
/**
* Update page meta settings for all the themer layouts which are not already set.
* Default settings to previous versions was `no-sidebar` and `page-builder` through filters.
*
* @since 1.0.28
* @return void
*/
public static function v_1_0_28() {
$query = array(
'post_type' => 'fl-theme-layout',
'no_found_rows' => true,
'post_status' => 'any',
'fields' => 'ids',
);
// Execute the query.
$posts = new WP_Query( $query );
foreach ( $posts->posts as $id ) {
$sidebar = get_post_meta( $id, 'site-sidebar-layout', true );
if ( '' == $sidebar ) {
update_post_meta( $id, 'site-sidebar-layout', 'no-sidebar' );
}
$content_layout = get_post_meta( $id, 'site-content-layout', true );
if ( '' == $content_layout ) {
update_post_meta( $id, 'site-content-layout', 'page-builder' );
}
}
}
/**
* Update options of older version than 1.1.0-beta.3.
*
* @since 1.1.0-beta.3
*/
public static function v_1_1_0_beta_3() {
$astra_options = get_option( ASTRA_THEME_SETTINGS, array() );
if ( isset( $astra_options['shop-grid'] ) ) {
$astra_options['shop-grids'] = array(
'desktop' => $astra_options['shop-grid'],
'tablet' => 2,
'mobile' => 1,
);
unset( $astra_options['shop-grid'] );
}
update_option( ASTRA_THEME_SETTINGS, $astra_options );
}
/**
* Update options of older version than 1.1.0-beta.3.
*
* Container Style
* Sidebar
* Grid
*
* @since 1.1.0-beta.3
*/
public static function v_1_1_0_beta_4() {
$astra_options = get_option( ASTRA_THEME_SETTINGS, array() );
$options = array(
'woocommerce-content-layout' => 'default',
'woocommerce-sidebar-layout' => 'default',
/* Shop */
'shop-grids' => array(
'desktop' => 3,
'tablet' => 2,
'mobile' => 1,
),
'shop-no-of-products' => '9',
);
$astra_options = get_option( ASTRA_THEME_SETTINGS, array() );
foreach ( $options as $key => $value ) {
if ( ! isset( $astra_options[ $key ] ) ) {
$astra_options[ $key ] = $value;
}
}
update_option( ASTRA_THEME_SETTINGS, $astra_options );
}
/**
* Update options of older version than 1.2.2.
*
* Logo Width
*
* @since 1.2.2
*/
public static function v_1_2_2() {
$astra_options = get_option( ASTRA_THEME_SETTINGS, array() );
if ( isset( $astra_options['ast-header-logo-width'] ) && ! is_array( $astra_options['ast-header-logo-width'] ) ) {
$astra_options['ast-header-responsive-logo-width'] = array(
'desktop' => $astra_options['ast-header-logo-width'],
'tablet' => '',
'mobile' => '',
);
}
if ( isset( $astra_options['blog-width'] ) ) {
$astra_options['shop-archive-width'] = $astra_options['blog-width'];
}
if ( isset( $astra_options['blog-max-width'] ) ) {
$astra_options['shop-archive-max-width'] = $astra_options['blog-max-width'];
}
update_option( ASTRA_THEME_SETTINGS, $astra_options );
}
/**
* Update Theme Color value same as Link Color for older version than 1.2.4.
*
* Theme Color update
*
* @since 1.2.4
*/
public static function v_1_2_4() {
$astra_options = get_option( ASTRA_THEME_SETTINGS, array() );
if ( isset( $astra_options['link-color'] ) ) {
$astra_options['theme-color'] = $astra_options['link-color'];
}
update_option( ASTRA_THEME_SETTINGS, $astra_options );
}
/**
* Update Google Fonts value with font categories
*
* Google Font Update
*
* @since 1.2.7
*/
public static function v_1_2_7() {
$astra_options = get_option( ASTRA_THEME_SETTINGS, array() );
$google_fonts = Astra_Font_Families::get_google_fonts();
foreach ( $astra_options as $key => $value ) {
if ( ! is_array( $value ) && ! empty( $value ) && ! is_bool( $value ) ) {
if ( array_key_exists( $value, $google_fonts ) ) {
$astra_options[ $key ] = "'" . $value . "', " . $google_fonts[ $value ][1];
}
}
}
update_option( ASTRA_THEME_SETTINGS, $astra_options );
}
/**
* Update options of older version than 1.3.0.
*
* Background options
*
* @since 1.3.0
*/
public static function v_1_3_0() {
$astra_options = get_option( ASTRA_THEME_SETTINGS, array() );
$astra_options['header-bg-obj'] = array(
'background-color' => isset( $astra_options['header-bg-color'] ) ? $astra_options['header-bg-color'] : '',
);
$astra_options['content-bg-obj'] = array(
'background-color' => isset( $astra_options['content-bg-color'] ) ? $astra_options['content-bg-color'] : '#ffffff',
);
$astra_options['footer-adv-bg-obj'] = array(
'background-color' => isset( $astra_options['footer-adv-bg-color'] ) ? $astra_options['footer-adv-bg-color'] : '',
'background-image' => isset( $astra_options['footer-adv-bg-img'] ) ? $astra_options['footer-adv-bg-img'] : '',
'background-repeat' => isset( $astra_options['footer-adv-bg-repeat'] ) ? $astra_options['footer-adv-bg-repeat'] : 'no-repeat',
'background-position' => isset( $astra_options['footer-adv-bg-pos'] ) ? $astra_options['footer-adv-bg-pos'] : 'center center',
'background-size' => isset( $astra_options['footer-adv-bg-size'] ) ? $astra_options['footer-adv-bg-size'] : 'cover',
'background-attachment' => isset( $astra_options['footer-adv-bg-attac'] ) ? $astra_options['footer-adv-bg-attac'] : 'scroll',
);
$astra_options['footer-bg-obj'] = array(
'background-color' => isset( $astra_options['footer-bg-color'] ) ? $astra_options['footer-bg-color'] : '',
'background-image' => isset( $astra_options['footer-bg-img'] ) ? $astra_options['footer-bg-img'] : '',
'background-repeat' => isset( $astra_options['footer-bg-rep'] ) ? $astra_options['footer-bg-rep'] : 'repeat',
'background-position' => isset( $astra_options['footer-bg-pos'] ) ? $astra_options['footer-bg-pos'] : 'center center',
'background-size' => isset( $astra_options['footer-bg-size'] ) ? $astra_options['footer-bg-size'] : 'auto',
'background-attachment' => isset( $astra_options['footer-bg-atch'] ) ? $astra_options['footer-bg-atch'] : 'scroll',
);
// Site layout background image and color.
$site_layout = isset( $astra_options['site-layout'] ) ? $astra_options['site-layout'] : '';
switch ( $site_layout ) {
case 'ast-box-layout':
$astra_options['site-layout-outside-bg-obj'] = array(
'background-color' => isset( $astra_options['site-layout-outside-bg-color'] ) ? $astra_options['site-layout-outside-bg-color'] : '',
'background-image' => isset( $astra_options['site-layout-box-bg-img'] ) ? $astra_options['site-layout-box-bg-img'] : '',
'background-repeat' => isset( $astra_options['site-layout-box-bg-rep'] ) ? $astra_options['site-layout-box-bg-rep'] : 'no-repeat',
'background-position' => isset( $astra_options['site-layout-box-bg-pos'] ) ? $astra_options['site-layout-box-bg-pos'] : 'center center',
'background-size' => isset( $astra_options['site-layout-box-bg-size'] ) ? $astra_options['site-layout-box-bg-size'] : 'cover',
'background-attachment' => isset( $astra_options['site-layout-box-bg-atch'] ) ? $astra_options['site-layout-box-bg-atch'] : 'scroll',
);
break;
case 'ast-padded-layout':
$bg_color = isset( $astra_options['site-layout-outside-bg-color'] ) ? $astra_options['site-layout-outside-bg-color'] : '';
$bg_image = isset( $astra_options['site-layout-padded-bg-img'] ) ? $astra_options['site-layout-padded-bg-img'] : '';
$astra_options['site-layout-outside-bg-obj'] = array(
'background-color' => empty( $bg_image ) ? $bg_color : '',
'background-image' => $bg_image,
'background-repeat' => isset( $astra_options['site-layout-padded-bg-rep'] ) ? $astra_options['site-layout-padded-bg-rep'] : 'no-repeat',
'background-position' => isset( $astra_options['site-layout-padded-bg-pos'] ) ? $astra_options['site-layout-padded-bg-pos'] : 'center center',
'background-size' => isset( $astra_options['site-layout-padded-bg-size'] ) ? $astra_options['site-layout-padded-bg-size'] : 'cover',
'background-attachment' => '',
);
break;
case 'ast-full-width-layout':
case 'ast-fluid-width-layout':
default:
$astra_options['site-layout-outside-bg-obj'] = array(
'background-color' => isset( $astra_options['site-layout-outside-bg-color'] ) ? $astra_options['site-layout-outside-bg-color'] : '',
);
break;
}
update_option( ASTRA_THEME_SETTINGS, $astra_options );
}
/**
* Mobile Header - Border new param introduced for Top, Right, Bottom and left border.
* Update options of older version than 1.4.0-beta.3.
*
* @since 1.4.0-beta.3
*/
public static function v_1_4_0_beta_3() {
$theme_options = get_option( 'astra-settings' );
$mobile_logo_width = astra_get_option( 'mobile-header-logo-width' );
if ( '' != $mobile_logo_width ) {
$theme_options['ast-header-responsive-logo-width']['tablet'] = $mobile_logo_width;
}
$mobile_logo = ( isset( $theme_options['mobile-header-logo'] ) && '' !== $theme_options['mobile-header-logo'] ) ? $theme_options['mobile-header-logo'] : false;
if ( '' != $mobile_logo ) {
$theme_options['inherit-sticky-logo'] = false;
}
update_option( 'astra-settings', $theme_options );
}
/**
* Introduced different logo for mobile devices option
*
* @since 1.4.0-beta.4
*/
public static function v_1_4_0_beta_4() {
$mobile_header_logo = astra_get_option( 'mobile-header-logo' );
$theme_options = get_option( 'astra-settings' );
if ( '' != $mobile_header_logo ) {
$theme_options['different-mobile-logo'] = true;
}
update_option( 'astra-settings', $theme_options );
}
/**
* Function to backward compatibility for version less than 1.4.0
*
* @since 1.4.0-beta.5
*/
public static function v_1_4_0_beta_5() {
// Set default toggle button style.
$theme_options = get_option( 'astra-settings' );
if ( ! isset( $theme_options['mobile-header-toggle-btn-style'] ) ) {
$theme_options['mobile-header-toggle-btn-style'] = 'fill';
}
$theme_options['hide-custom-menu-mobile'] = 0;
update_option( 'astra-settings', $theme_options );
}
/**
* Function to backward compatibility for version less than 1.4.3
* Set the new option different-retina-logo to true for users who are already using a retina logo.
*
* @since 1.4.3-aplha.1
*/
public static function v_1_4_3_alpha_1() {
$mobile_header_logo = astra_get_option( 'ast-header-retina-logo' );
$theme_options = get_option( 'astra-settings' );
if ( '' != $mobile_header_logo ) {
$theme_options['different-retina-logo'] = '1';
}
update_option( 'astra-settings', $theme_options );
}
/**
* Manage backwards compatibility when migrating to v1.4.9
*
* @since 1.4.9
* @return void
*/
public static function v_1_4_9() {
$theme_options = get_option( 'astra-settings' );
// Set flag to use anchors CSS selectors in the CSS for headings.
if ( ! isset( $theme_options['include-headings-in-typography'] ) ) {
$theme_options['include-headings-in-typography'] = true;
update_option( 'astra-settings', $theme_options );
}
}
/**
* Added Submenu Border options into theme from Addon
*
* @since 1.5.0-beta.4
*
* @return void
*/
public static function v_1_5_0_beta_4() {
$border_disabled_values = array(
'top' => '0',
'bottom' => '0',
'left' => '0',
'right' => '0',
);
$inside_border_disabled_values = array(
'bottom' => '0',
);
$border_enabled_values = array(
'top' => '1',
'bottom' => '1',
'left' => '1',
'right' => '1',
);
$inside_border_enabled_values = array(
'bottom' => '1',
);
$theme_options = get_option( 'astra-settings' );
$submenu_border = isset( $theme_options['primary-submenu-border'] ) ? $theme_options['primary-submenu-border'] : true;
// Primary Header.
if ( $submenu_border ) {
$theme_options['primary-submenu-border'] = $border_enabled_values;
$theme_options['primary-submenu-item-border'] = $inside_border_enabled_values;
} else {
$theme_options['primary-submenu-border'] = $border_disabled_values;
$theme_options['primary-submenu-item-border'] = $inside_border_disabled_values;
}
update_option( 'astra-settings', $theme_options );
}
/**
* Set flag 'submenu-below-header' to false to load fallback CSS to force menu load right after the container cropping logo and header.
*
* @see https://github.com/brainstormforce/astra/pull/820/
*
* @return void
*/
public static function v_1_5_0_rc_1() {
$theme_options = get_option( 'astra-settings' );
// Set flag to use anchors CSS selectors in the CSS for headings.
if ( ! isset( $theme_options['submenu-below-header'] ) ) {
$theme_options['submenu-below-header'] = false;
update_option( 'astra-settings', $theme_options );
}
}
/**
* Set Primary Header submenu border color 'primary-submenu-b-color' to '#eaeaea' for old users who doesn't set any color and set the theme color who install the fresh 1.5.0-rc.3 theme.
*
* @see https://github.com/brainstormforce/astra/pull/835
*
* @return void
*/
public static function v_1_5_0_rc_3() {
$theme_options = get_option( 'astra-settings' );
// Set the default #eaeaea sub menu border color who doesn't set any color.
if ( ! isset( $theme_options['primary-submenu-b-color'] ) || empty( $theme_options['primary-submenu-b-color'] ) ) {
$theme_options['primary-submenu-b-color'] = '#eaeaea';
}
// Set the primary sub menu animation to default for existing user.
if ( ! isset( $theme_options['header-main-submenu-container-animation'] ) ) {
$theme_options['header-main-submenu-container-animation'] = '';
}
update_option( 'astra-settings', $theme_options );
}
/**
* Change the Primary submenu option to be checkbpx rather than border selection.
*
* @return void
*/
public static function v_1_5_1() {
$theme_options = get_option( 'astra-settings', array() );
$primary_submenu_otem_border = isset( $theme_options['primary-submenu-item-border'] ) ? $theme_options['primary-submenu-item-border'] : array();
if ( ( is_array( $primary_submenu_otem_border ) && '0' != $primary_submenu_otem_border['bottom'] ) ) {
$theme_options['primary-submenu-item-border'] = 1;
} else {
$theme_options['primary-submenu-item-border'] = 0;
}
if ( isset( $theme_options['primary-submenu-b-color'] ) && ! empty( $theme_options['primary-submenu-b-color'] ) ) {
$theme_options['primary-submenu-item-b-color'] = $theme_options['primary-submenu-b-color'];
}
update_option( 'astra-settings', $theme_options );
}
/**
* Add same font variant as font weight for body and heading.
*
* @return void
*/
public static function v_1_5_2() {
$theme_options = get_option( 'astra-settings', array() );
if ( isset( $theme_options['body-font-weight'] ) && is_numeric( $theme_options['body-font-weight'] ) ) {
$theme_options['body-font-variant'] = $theme_options['body-font-weight'];
}
if ( isset( $theme_options['headings-font-weight'] ) && is_numeric( $theme_options['headings-font-weight'] ) ) {
$theme_options['headings-font-variant'] = $theme_options['headings-font-weight'];
}
update_option( 'astra-settings', $theme_options );
}
/**
* Disable transparent header in customizer if the transparent header addon was disabled.
*
* @return void
*/
public static function v_1_6_0() {
$theme_options = get_option( 'astra-settings', array() );
// Disable Transparent header is Transparent Header addon was deactivated from Astra Pro.
if ( is_callable( 'Astra_Ext_Extension::get_enabled_addons' ) ) {
$addons = Astra_Ext_Extension::get_enabled_addons();
// If transparent header is addon was disabled, disable the transparent header.
if ( 'transparent-header' !== $addons['transparent-header'] ) {
$theme_options['transparent-header-enable'] = 0;
}
}
update_option( 'astra-settings', $theme_options );
}
/**
* Add backward compatibility for Heading tags previous default values.
* Set Inline Logo & Site Title as false if user had not changed its value.
* Change default value for blog archive blog title.
*
* @return void
*/
public static function v_1_6_1() {
$theme_options = get_option( 'astra-settings', array() );
// If user was using a default value for h1, Set the default in the option.
if ( ! isset( $theme_options['font-size-h1'] ) ) {
$theme_options['font-size-h1'] = array(
'desktop' => '48',
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
}
// If user was using a default value for h2, Set the default in the option.
if ( ! isset( $theme_options['font-size-h2'] ) ) {
$theme_options['font-size-h2'] = array(
'desktop' => '42',
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
}
// If user was using a default value for h3, Set the default in the option.
if ( ! isset( $theme_options['font-size-h3'] ) ) {
$theme_options['font-size-h3'] = array(
'desktop' => '30',
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
}
// If user was using a default value for h3, Set the default in the option.
if ( ! isset( $theme_options['font-size-page-title'] ) ) {
$theme_options['font-size-page-title'] = array(
'desktop' => '30',
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
}
// If inline-logo option was unset previously, set to to false as new default is `true`.
if ( ! isset( $theme_options['logo-title-inline'] ) ) {
$theme_options['logo-title-inline'] = 0;
}
update_option( 'astra-settings', $theme_options );
}
/**
* Flush bundled products After udpating to version 2.0.0
*
* @return void
*/
public static function v_2_0_0() {
update_site_option( 'bsf_force_check_extensions', true );
}
}
}
/**
* Kicking this off by calling 'get_instance()' method
*/
Astra_Theme_Update::get_instance();
/**
* Custom template tags for this theme.
*
* Eventually, some of the functionality here could be replaced by core features.
*
* @package Astra
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
if ( ! function_exists( 'astra_entry_footer' ) ) :
/**
* Prints HTML with meta information for the categories, tags and comments.
*/
function astra_entry_footer() {
if ( ! is_single() && ! post_password_required() && ( comments_open() || get_comments_number() ) ) {
echo '';
}
astra_edit_post_link(
sprintf(
/* translators: %s: Name of current post */
esc_html__( 'Edit %s', 'astra' ),
the_title( '"', '"', false )
),
'',
''
);
}
endif;/**
* Admin functions - Functions that add some functionality to WordPress admin panel
*
* @package Astra
* @since 1.0.0
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
/**
* Register menus
*/
if ( ! function_exists( 'astra_register_menu_locations' ) ) {
/**
* Register menus
*
* @since 1.0.0
*/
function astra_register_menu_locations() {
/**
* Primary Menus
*/
register_nav_menus(
array(
'primary' => __( 'Primary Menu', 'astra' ),
)
);
if ( Astra_Builder_Helper::$is_header_footer_builder_active ) {
/**
* Register the Secondary & Mobile menus.
*/
register_nav_menus(
array(
'secondary_menu' => __( 'Secondary Menu', 'astra' ),
'mobile_menu' => __( 'Mobile Menu', 'astra' ),
)
);
$component_limit = defined( 'ASTRA_EXT_VER' ) ? Astra_Builder_Helper::$component_limit : Astra_Builder_Helper::$num_of_header_menu;
for ( $index = 3; $index <= $component_limit; $index++ ) {
if ( ! is_customize_preview() && ! Astra_Builder_Helper::is_component_loaded( 'menu-' . $index ) ) {
continue;
}
register_nav_menus(
array(
'menu_' . $index => __( 'Menu ', 'astra' ) . $index,
)
);
}
/**
* Register the Account menus.
*/
register_nav_menus(
array(
'loggedin_account_menu' => __( 'Logged In Account Menu', 'astra' ),
)
);
}
/**
* Footer Menus
*/
register_nav_menus(
array(
'footer_menu' => __( 'Footer Menu', 'astra' ),
)
);
}
}
add_action( 'init', 'astra_register_menu_locations' );/**
* Schema markup.
*
* @package Astra
* @author Astra
* @copyright Copyright (c) 2020, Astra
* @link https://wpastra.com/
* @since Astra 2.1.3
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
/**
* Astra CreativeWork Schema Markup.
*
* @since 2.1.3
*/
class Astra_Organization_Schema extends Astra_Schema {
/**
* Setup schema
*
* @since 2.1.3
*/
public function setup_schema() {
if ( true !== $this->schema_enabled() ) {
return false;
}
add_filter( 'astra_attr_site-identity', array( $this, 'organization_Schema' ) );
add_filter( 'astra_attr_site-title', array( $this, 'site_title_attr' ) );
add_filter( 'astra_attr_site-title-link', array( $this, 'site_title_link_attr' ) );
add_filter( 'astra_attr_site-title-custom-link', array( $this, 'site_title_custom_link_attr' ) );
add_filter( 'astra_attr_site-title-sticky-custom-link', array( $this, 'site_title_sticky_custom_link_attr' ) );
add_filter( 'astra_attr_site-title-none-sticky-custom-link', array( $this, 'site_title_none_sticky_custom_link_attr' ) );
add_filter( 'astra_attr_site-title-sticky-custom-logo-link', array( $this, 'site_title_sticky_custom_logo_link_attr' ) );
}
/**
* Update Schema markup attribute.
*
* @param array $attr An array of attributes.
*
* @return array Updated embed markup.
*/
public function organization_Schema( $attr ) {
$attr['itemtype'] = 'https://schema.org/Organization';
$attr['itemscope'] = 'itemscope';
return $attr;
}
/**
* Update Schema markup attribute.
*
* @param array $attr An array of attributes.
*
* @return array Updated embed markup.
*/
public function site_title_attr( $attr ) {
$attr['itemprop'] = 'name';
return $attr;
}
/**
* Update Schema markup attribute.
*
* @param array $attr An array of attributes.
*
* @return array Updated embed markup.
*/
public function site_title_link_attr( $attr ) {
$attr['itemprop'] = 'url';
$attr['class'] = '';
return $attr;
}
/**
* Update Schema markup attribute.
*
* @param array $attr An array of attributes.
*
* @return array Updated embed markup.
*/
public function site_title_custom_link_attr( $attr ) {
$attr['itemprop'] = 'url';
$attr['class'] = '';
return $attr;
}
/**
* Update Schema markup attribute.
*
* @param array $attr An array of attributes.
*
* @return array Updated embed markup.
*/
public function site_title_sticky_custom_link_attr( $attr ) {
$attr['itemprop'] = 'url';
$attr['class'] = '';
return $attr;
}
/**
* Update Schema markup attribute.
*
* @param array $attr An array of attributes.
*
* @return array Updated embed markup.
*/
public function site_title_none_sticky_custom_link_attr( $attr ) {
$attr['itemprop'] = 'url';
$attr['class'] = '';
return $attr;
}
/**
* Update Schema markup attribute.
*
* @param array $attr An array of attributes.
*
* @return array Updated embed markup.
*/
public function site_title_sticky_custom_logo_link_attr( $attr ) {
$attr['itemprop'] = 'url';
$attr['class'] = '';
return $attr;
}
/**
* Enabled schema
*
* @since 2.1.3
*/
protected function schema_enabled() {
return apply_filters( 'astra_organization_schema_enabled', parent::schema_enabled() );
}
}
new Astra_Organization_Schema();/**
* #.# Editor Styles
*
*/
.frm-block-intro-screen .frm-block-intro-content {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
text-align: center;
font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
}
.frm-block-intro-content .frm-block-title {
margin-bottom: 10px;
font-size: 20px;
color: #535353;
}
.frm-block-intro-content svg {
margin-top: 32px;
margin-bottom: 12px;
color: #4d4d4d;
}
.frm-block-intro-content select + span svg {
margin: unset;
}
.editor-styles-wrapper h2.frm-block-title {
color: #4d4d4d;
font-weight: 500;
font-size: 1.3em;
}
.frm-block-intro-content .cls-1 {
fill: #4d4d4d;
}
.frm-block-intro-content .cls-1.orange {
fill: #f05a24;
}
.frm-block-intro-content .dashicons-feedback,
.frm-block-intro-content .frm_white_label_icon {
width:120px;
height:120px;
}
.frm-block-intro-content .dashicons-feedback:before,
.frm-block-intro-content .frm_white_label_icon:before {
font-size:120px;
}
.frm-block-selector-screen {
margin-bottom: 15px;
}
.frm-view-filter-component p {
margin-left: 28px;
}
.frm-view-filter-component label {
font-weight: 600;
}
.frm-view-filter-component .components-radio-control__option {
flex-wrap: wrap;
}
.components-panel__row.frm-row-small-top-margin {
margin-top: 5px;
}
.frm-admin-loading {
width: 200px;
}
.editor-styles-wrapper .frm_repeat_buttons i {
/* Avoid font-style: italic conflicts. The +/- icon should not be italic */
font-style: unset;
}
.editor-styles-wrapper .wp-block-post-content .with_frm_style .frm_repeat_buttons .frm_button {
/* Prevent blue anchor text in Add/Remove buttons */
color: var(--submit-text-color) !important;
/* Ensure consistent background color on focus for Add/Remove buttons */
background: var(--submit-bg-color) !important;
}
/* Disables all interactions with form fields */
.editor-styles-wrapper .frm_form_fields * {
pointer-events: none;
}
/**
* Jetpack Compatibility File.
*
* @link https://jetpack.me/
*
* @package Astra
*/
// If plugin - 'Jetpack' not exist then return.
if ( ! class_exists( 'Jetpack' ) ) {
return;
}
/**
* Astra Jetpack Compatibility
*/
if ( ! class_exists( 'Astra_Jetpack' ) ) :
/**
* Astra Jetpack Compatibility
*
* @since 1.0.0
*/
class Astra_Jetpack {
/**
* Member Variable
*
* @var object instance
*/
private static $instance;
/**
* Initiator
*/
public static function get_instance() {
if ( ! isset( self::$instance ) ) {
self::$instance = new self();
}
return self::$instance;
}
/**
* Constructor
*/
public function __construct() {
add_action( 'after_setup_theme', array( $this, 'jetpack_setup' ) );
}
/**
* Add theme support for Infinite Scroll.
* See: https://jetpack.me/support/infinite-scroll/
*/
public function jetpack_setup() {
add_theme_support(
'infinite-scroll',
array(
'container' => 'main',
'render' => array( $this, 'infinite_scroll_render' ),
'footer' => 'page',
)
);
} // end function jetpack_setup
/**
* Custom render function for Infinite Scroll.
*/
public function infinite_scroll_render() {
while ( have_posts() ) {
the_post();
get_template_part( 'template-parts/content', astra_get_post_format() );
}
} // end function infinite_scroll_render
}
endif;
/**
* Kicking this off by calling 'get_instance()' method
*/
Astra_Jetpack::get_instance();
/*!
* Font Awesome Free 5.0.8 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
*/
@font-face{font-family:Font Awesome\ 5 Free;font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.fas{font-family:Font Awesome\ 5 Free;font-weight:900}/**
* Heading Colors Loader for Astra theme.
*
* @package Astra
* @author Brainstorm Force
* @copyright Copyright (c) 2020, Brainstorm Force
* @link https://www.brainstormforce.com
* @since Astra 2.2.0
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
/**
* Customizer Initialization
*
* @since 2.2.0
*/
class Astra_Heading_Colors_Loader {
/**
* Constructor
*
* @since 2.2.0
*/
public function __construct() {
add_filter( 'astra_theme_defaults', array( $this, 'theme_defaults' ) );
add_action( 'customize_register', array( $this, 'customize_register' ), 2 );
add_action( 'customize_preview_init', array( $this, 'preview_scripts' ), 110 );
// Load Google fonts.
add_action( 'astra_get_fonts', array( $this, 'add_fonts' ), 1 );
}
/**
* Enqueue google fonts.
*
* @since 2.2.0
*/
public function add_fonts() {
$font_family_h1 = astra_get_option( 'font-family-h1' );
$font_weight_h1 = astra_get_option( 'font-weight-h1' );
Astra_Fonts::add_font( $font_family_h1, $font_weight_h1 );
$font_family_h2 = astra_get_option( 'font-family-h2' );
$font_weight_h2 = astra_get_option( 'font-weight-h2' );
Astra_Fonts::add_font( $font_family_h2, $font_weight_h2 );
$font_family_h3 = astra_get_option( 'font-family-h3' );
$font_weight_h3 = astra_get_option( 'font-weight-h3' );
Astra_Fonts::add_font( $font_family_h3, $font_weight_h3 );
$theme_btn_font_family = astra_get_option( 'font-family-button' );
$theme_btn_font_weight = astra_get_option( 'font-weight-button' );
Astra_Fonts::add_font( $theme_btn_font_family, $theme_btn_font_weight );
$header_btn_font_family = astra_get_option( 'primary-header-button-font-family' );
$header_btn_font_weight = astra_get_option( 'primary-header-button-font-weight' );
Astra_Fonts::add_font( $header_btn_font_family, $header_btn_font_weight );
}
/**
* Set Options Default Values
*
* @param array $defaults Astra options default value array.
* @return array
*
* @since 2.2.0
*/
public function theme_defaults( $defaults ) {
/**
* Heading Tags to
*/
$defaults['h1-color'] = '';
$defaults['h2-color'] = '';
$defaults['h3-color'] = '';
$defaults['h4-color'] = '';
$defaults['h5-color'] = '';
$defaults['h6-color'] = '';
// Header .
$defaults['font-family-h1'] = 'inherit';
$defaults['font-weight-h1'] = 'inherit';
$defaults['text-transform-h1'] = '';
$defaults['line-height-h1'] = '';
// Header .
$defaults['font-family-h2'] = 'inherit';
$defaults['font-weight-h2'] = 'inherit';
$defaults['text-transform-h2'] = '';
$defaults['line-height-h2'] = '';
// Header .
$defaults['font-family-h3'] = 'inherit';
$defaults['font-weight-h3'] = 'inherit';
$defaults['text-transform-h3'] = '';
$defaults['line-height-h3'] = '';
/**
* Theme button Font Defaults
*/
$defaults['font-weight-button'] = 'inherit';
$defaults['font-family-button'] = 'inherit';
$defaults['font-size-button'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
$defaults['text-transform-button'] = '';
/**
* Check backward compatibility for button line height.
*/
$defaults['theme-btn-line-height'] = 1;
$defaults['theme-btn-letter-spacing'] = '';
return $defaults;
}
/**
* Load color configs for the Heading Colors.
*
* @param WP_Customize_Manager $wp_customize Theme Customizer object.
*
* @since 2.2.0
*/
public function customize_register( $wp_customize ) {
/**
* Register Panel & Sections
*/
require_once ASTRA_THEME_HEADING_COLORS_DIR . 'customizer/class-astra-heading-colors-configs.php';// phpcs:ignore: WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound
}
/**
* Customizer Preview
*
* @since 2.2.0
*/
public function preview_scripts() {
/**
* Load unminified if SCRIPT_DEBUG is true.
*/
/* Directory and Extension */
$dir_name = ( SCRIPT_DEBUG ) ? 'unminified' : 'minified';
$file_prefix = ( SCRIPT_DEBUG ) ? '' : '.min';
wp_enqueue_script( 'astra-heading-colors-customizer-preview-js', ASTRA_THEME_HEADING_COLORS_URI . 'assets/js/' . $dir_name . '/customizer-preview' . $file_prefix . '.js', array( 'customize-preview', 'astra-customizer-preview-js' ), ASTRA_THEME_VERSION, true );
}
}
/**
* Kicking this off by creating the object of the class.
*/
new Astra_Heading_Colors_Loader();/**
* Heading Colors - Dynamic CSS
*
* @package Astra
* @since 2.1.4
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
/**
* Heading Colors
*/
add_filter( 'astra_dynamic_theme_css', 'astra_heading_colors_section_dynamic_css' );
/**
* Dynamic CSS
*
* @param string $dynamic_css Astra Dynamic CSS.
* @param string $dynamic_css_filtered Astra Dynamic CSS Filters.
* @return String Generated dynamic CSS for Heading Colors.
*
* @since 2.1.4
*/
function astra_heading_colors_section_dynamic_css( $dynamic_css, $dynamic_css_filtered = '' ) {
/**
* Heading Colors - h1 - h6.
*/
$heading_base_color = astra_get_option( 'heading-base-color' );
/**
* Normal Colors without reponsive option.
* [1]. Heading Colors
*/
$css_output = array(
/**
* Content base heading color.
*/
'h1, .entry-content h1, h2, .entry-content h2, h3, .entry-content h3, h4, .entry-content h4, h5, .entry-content h5, h6, .entry-content h6' => array(
'color' => esc_attr( $heading_base_color ),
),
);
/* Parse CSS from array() */
$css_output = astra_parse_css( $css_output );
$dynamic_css .= $css_output;
return $dynamic_css;
}/**
* Astra Builder Options default values.
*
* @package astra-builder
*/
// No direct access, please.
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
add_filter( 'astra_theme_defaults', 'astra_hf_builder_customizer_defaults' );
/**
* Return defaults for Builder Options.
*
* @param array $defaults exsiting options array.
* @return array
*/
function astra_hf_builder_customizer_defaults( $defaults ) {
/**
* Header Builder - Desktop Defaults.
*/
$defaults['header-desktop-items'] = array(
'above' =>
array(
'above_left' => array(),
'above_left_center' => array(),
'above_center' => array(),
'above_right_center' => array(),
'above_right' => array(),
),
'primary' =>
array(
'primary_left' => array( 'logo' ),
'primary_left_center' => array(),
'primary_center' => array(),
'primary_right_center' => array(),
'primary_right' => array( 'menu-1' ),
),
'below' =>
array(
'below_left' => array(),
'below_left_center' => array(),
'below_center' => array(),
'below_right_center' => array(),
'below_right' => array(),
),
);
/**
* Header Builder - Mobile Defaults.
*/
$defaults['header-mobile-items'] = array(
'popup' => array( 'popup_content' => array( 'mobile-menu' ) ),
'above' =>
array(
'above_left' => array(),
'above_center' => array(),
'above_right' => array(),
),
'primary' =>
array(
'primary_left' => array( 'logo' ),
'primary_center' => array(),
'primary_right' => array( 'mobile-trigger' ),
),
'below' =>
array(
'below_left' => array(),
'below_center' => array(),
'below_right' => array(),
),
);
/**
* Primary Header Defaults.
*/
$defaults['hb-header-main-layout-width'] = 'content';
$defaults['hb-header-height'] = array(
'desktop' => 70,
'tablet' => '',
'mobile' => '',
);
$defaults['hb-stack'] = array(
'desktop' => 'stack',
'tablet' => 'stack',
'mobile' => 'stack',
);
$defaults['hb-header-main-sep'] = 1;
$defaults['hb-header-main-sep-color'] = '#eaeaea';
$defaults['hb-header-main-menu-align'] = 'inline';
$defaults['hb-header-bg-obj-responsive'] = array(
'desktop' => array(
'background-color' => '#ffffff',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
'tablet' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
'mobile' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
);
$defaults['hb-header-spacing'] = array(
'desktop' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'tablet' => array(
'top' => '1.5',
'right' => '',
'bottom' => '1.5',
'left' => '',
),
'mobile' => array(
'top' => '1',
'right' => '',
'bottom' => '1',
'left' => '',
),
'desktop-unit' => 'px',
'tablet-unit' => 'em',
'mobile-unit' => 'em',
);
/**
* Above Header Defaults.
*/
$defaults['hba-header-layout'] = 'above-header-layout-1';
$defaults['hba-header-height'] = array(
'desktop' => 50,
'tablet' => '',
'mobile' => '',
);
$defaults['hba-stack'] = array(
'desktop' => 'stack',
'tablet' => 'stack',
'mobile' => 'stack',
);
$defaults['hba-header-separator'] = 1;
$defaults['hba-header-bottom-border-color'] = '#eaeaea';
$defaults['hba-header-bg-obj-responsive'] = array(
'desktop' => array(
'background-color' => '#ffffff',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
'tablet' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
'mobile' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
);
$defaults['hba-header-text-color-responsive'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults['hba-header-link-color-responsive'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults['hba-header-link-h-color-responsive'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults['hba-header-spacing'] = array(
'desktop' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'tablet' => array(
'top' => '0',
'right' => '',
'bottom' => '0',
'left' => '',
),
'mobile' => array(
'top' => '0.5',
'right' => '',
'bottom' => '',
'left' => '',
),
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'em',
);
/**
* Logo defaults.
*/
$defaults['ast-header-responsive-logo-width'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
/**
* Below Header Defaults.
*/
$defaults['hbb-header-layout'] = 'below-header-layout-1';
$defaults['hbb-header-height'] = array(
'desktop' => 60,
'tablet' => '',
'mobile' => '',
);
$defaults['hbb-stack'] = array(
'desktop' => 'stack',
'tablet' => 'stack',
'mobile' => 'stack',
);
$defaults['hbb-header-separator'] = 1;
$defaults['hbb-header-bottom-border-color'] = '#eaeaea';
$defaults['hbb-header-bg-obj-responsive'] = array(
'desktop' => array(
'background-color' => '#eeeeee',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
'tablet' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
'mobile' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
);
$defaults['hbb-header-spacing'] = array(
'desktop' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'tablet' => array(
'top' => '1',
'right' => '',
'bottom' => '1',
'left' => '',
),
'mobile' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'desktop-unit' => 'px',
'tablet-unit' => 'em',
'mobile-unit' => 'px',
);
for ( $index = 1; $index <= Astra_Builder_Helper::$component_limit; $index++ ) {
$defaults = prepare_button_defaults( $defaults, $index );
$defaults = prepare_html_defaults( $defaults, $index );
$defaults = prepare_social_icon_defaults( $defaults, $index );
$defaults = prepare_widget_defaults( $defaults, $index );
$defaults = prepare_menu_defaults( $defaults, $index );
}
/**
* Header Types - Defaults
*/
$defaults['transparent-header-main-sep'] = '';
$defaults['transparent-header-main-sep-color'] = '';
/**
* Header > Sticky Defaults.
*/
$defaults['sticky-header-on-devices'] = 'desktop';
$defaults['sticky-header-style'] = 'none';
/**
* Footer Builder - Desktop Defaults.
*/
$defaults['footer-desktop-items'] = array(
'above' =>
array(
'above_1' => array(),
'above_2' => array(),
'above_3' => array(),
'above_4' => array(),
'above_5' => array(),
),
'primary' =>
array(
'primary_1' => array(),
'primary_2' => array(),
'primary_3' => array(),
'primary_4' => array(),
'primary_5' => array(),
),
'below' =>
array(
'below_1' => array( 'copyright' ),
'below_2' => array(),
'below_3' => array(),
'below_4' => array(),
'below_5' => array(),
),
);
/**
* Above Footer Defaults.
*/
$defaults['hba-footer-height'] = 60;
$defaults['hba-footer-column'] = '2';
$defaults['hba-footer-layout'] = array(
'desktop' => '2-equal',
'tablet' => '2-equal',
'mobile' => 'full',
);
/**
* Footer - Defaults
*/
$defaults['hba-footer-bg-obj-responsive'] = array(
'desktop' => array(
'background-color' => '#eeeeee',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
'tablet' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
'mobile' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
);
$defaults['hbb-footer-bg-obj-responsive'] = array(
'desktop' => array(
'background-color' => '#eeeeee',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
'tablet' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
'mobile' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
);
$defaults['hb-footer-bg-obj-responsive'] = array(
'desktop' => array(
'background-color' => '#f9f9f9',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
'tablet' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
'mobile' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
);
/**
* Header Margin defaults.
*/
$defaults['section-header-builder-layout-margin'] = array(
'desktop' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'tablet' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'mobile' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
/**
* Below Footer Defaults.
*/
$defaults['hbb-footer-height'] = 80;
$defaults['hbb-footer-column'] = '1';
$defaults['hbb-footer-layout'] = array(
'desktop' => 'full',
'tablet' => 'full',
'mobile' => 'full',
);
$defaults['hba-footer-layout-width'] = 'content';
$defaults['hb-footer-layout-width'] = 'content';
$defaults['hbb-footer-layout-width'] = 'content';
$defaults['hba-footer-vertical-alignment'] = 'flex-start';
$defaults['hb-footer-vertical-alignment'] = 'flex-start';
$defaults['hbb-footer-vertical-alignment'] = 'flex-start';
$defaults['footer-bg-obj-responsive'] = array(
'desktop' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
'tablet' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
'mobile' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
);
/**
* Primary Footer Defaults.
*/
$defaults['hb-footer-column'] = '3';
$defaults['hb-footer-separator'] = 1;
$defaults['hb-footer-bottom-border-color'] = '#e6e6e6';
$defaults['hb-footer-layout'] = array(
'desktop' => '3-equal',
'tablet' => '3-equal',
'mobile' => 'full',
);
$defaults['hb-footer-main-sep'] = 1;
$defaults['hb-footer-main-sep-color'] = '#e6e6e6';
/**
* Footer Copyright.
*/
$defaults['footer-copyright-editor'] = 'Copyright [copyright] [current_year] [site_title] | Powered by [theme_author]';
$defaults['footer-copyright-color'] = '#3a3a3a';
$defaults['line-height-section-footer-copyright'] = 2;
$defaults['footer-copyright-alignment'] = array(
'desktop' => 'center',
'tablet' => 'center',
'mobile' => 'center',
);
$defaults['font-size-section-footer-copyright'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
$defaults['font-weight-section-footer-copyright'] = 'inherit';
$defaults['font-family-section-footer-copyright'] = 'inherit';
$defaults['text-transform-section-footer-copyright'] = '';
$defaults['line-height-section-footer-copyright'] = '';
$defaults['footer-menu-alignment'] = array(
'desktop' => 'center',
'tablet' => 'center',
'mobile' => 'center',
);
/**
* Footer Below Padding.
*/
$defaults['section-below-footer-builder-padding'] = array(
'desktop' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'tablet' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'mobile' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
/**
* Search.
*/
$defaults['header-search-icon-space'] = array(
'desktop' => 18,
'tablet' => 18,
'mobile' => 18,
);
$defaults['header-search-icon-color'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
/**
* Transparent Header > Component Configs
*/
$defaults['transparent-header-social-icons-color'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults['transparent-header-social-icons-h-color'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults['transparent-header-social-icons-bg-color'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults['transparent-header-social-icons-bg-h-color'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults['transparent-header-html-text-color'] = '';
$defaults['transparent-header-html-link-color'] = '';
$defaults['transparent-header-html-link-h-color'] = '';
$defaults['transparent-header-widget-title-color'] = '';
$defaults['transparent-header-widget-content-color'] = '';
$defaults['transparent-header-widget-link-color'] = '';
$defaults['transparent-header-widget-link-h-color'] = '';
$defaults['transparent-header-button-text-color'] = '';
$defaults['transparent-header-button-text-h-color'] = '';
$defaults['transparent-header-button-bg-color'] = '';
$defaults['transparent-header-button-bg-h-color'] = '';
/**
* Off-Canvas defaults.
*/
$defaults['off-canvas-layout'] = 'side-panel';
$defaults['off-canvas-slide'] = 'right';
$defaults['header-builder-menu-toggle-target'] = 'icon';
$defaults['header-offcanvas-content-alignment'] = 'flex-start';
$defaults['off-canvas-background'] = array(
'background-color' => '#ffffff',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
);
$defaults['off-canvas-close-color'] = '#3a3a3a';
$defaults['mobile-header-type'] = 'off-canvas';
$defaults['off-canvas-inner-spacing'] = '';
$defaults['footer-menu-layout'] = array(
'desktop' => 'horizontal',
'tablet' => 'vertical',
'mobile' => 'vertical',
);
$defaults['footer-menu-bg-obj-responsive'] = array(
'desktop' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
'tablet' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
'mobile' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
);
$defaults['footer-menu-color-responsive'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults['footer-menu-h-bg-color-responsive'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults['footer-menu-h-color-responsive'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults['footer-menu-a-bg-color-responsive'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults['footer-menu-a-color-responsive'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults['footer-menu-font-size'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
$defaults['footer-menu-font-weight'] = 'inherit';
$defaults['footer-menu-font-family'] = 'inherit';
$defaults['footer-menu-text-transform'] = '';
$defaults['footer-menu-line-height'] = '';
$defaults['footer-main-menu-spacing'] = array(
'desktop' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'tablet' => array(
'top' => '0',
'right' => '20',
'bottom' => '0',
'left' => '20',
),
'mobile' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
// Mobile Trigger defaults.
$defaults['header-trigger-icon'] = 'menu';
$defaults['mobile-header-toggle-icon-size'] = 20;
$defaults['mobile-header-toggle-btn-style'] = 'minimal';
$defaults['mobile-header-toggle-btn-border-size'] = array(
'top' => 1,
'right' => 1,
'bottom' => 1,
'left' => 1,
);
$defaults['mobile-header-toggle-border-radius'] = 2;
/**
* Mobile trigger - Label Typography.
*/
$defaults['mobile-header-label-font-family'] = 'inherit';
$defaults['mobile-header-label-font-weight'] = 'inherit';
$defaults['mobile-header-label-text-transform'] = '';
$defaults['mobile-header-label-line-height'] = '';
$defaults['mobile-header-label-font-size'] = '';
/**
* Mobile Menu
*/
// Specify all the default values for Menu from here.
$defaults['header-mobile-menu-bg-color'] = '';
$defaults['header-mobile-menu-color'] = '';
$defaults['header-mobile-menu-h-bg-color'] = '';
$defaults['header-mobile-menu-h-color'] = '';
$defaults['header-mobile-menu-a-bg-color'] = '';
$defaults['header-mobile-menu-a-color'] = '';
$defaults['header-mobile-menu-bg-obj-responsive'] = array(
'desktop' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
'tablet' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
'mobile' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
);
$defaults['header-mobile-menu-color-responsive'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults['header-mobile-menu-h-bg-color-responsive'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults['header-mobile-menu-h-color-responsive'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults['header-mobile-menu-a-bg-color-responsive'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults['header-mobile-menu-a-color-responsive'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults['header-mobile-menu-submenu-container-animation'] = 'fade';
/**
* Submenu
*/
$defaults['header-mobile-menu-submenu-item-border'] = false;
$defaults['header-mobile-menu-submenu-item-b-size'] = '1';
$defaults['header-mobile-menu-submenu-item-b-color'] = '#eaeaea';
$defaults['header-mobile-menu-submenu-border'] = array(
'top' => 2,
'bottom' => 0,
'left' => 0,
'right' => 0,
);
/**
* Menu - Typography.
*/
$defaults['header-mobile-menu-font-size'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
$defaults['header-mobile-menu-font-weight'] = 'inherit';
$defaults['header-mobile-menu-font-family'] = 'inherit';
$defaults['header-mobile-menu-text-transform'] = '';
$defaults['header-mobile-menu-line-height'] = '';
/**
* Woo-Cart.
*/
$defaults['woo-header-cart-icon-style'] = 'none';
$defaults['header-woo-cart-icon-color'] = '';
$defaults['woo-header-cart-icon-radius'] = 3;
$defaults['woo-header-cart-total-display'] = true;
$defaults['woo-header-cart-title-display'] = true;
// Cart tray > General Color styles.
$defaults['header-woo-cart-text-color'] = '';
$defaults['header-woo-cart-link-color'] = '';
$defaults['header-woo-cart-background-color'] = '';
$defaults['header-woo-cart-separator-color'] = '';
$defaults['header-woo-cart-link-hover-color'] = '';
// Cart tray > Cart Button styles.
$defaults['header-woo-cart-btn-text-color'] = '';
$defaults['header-woo-cart-btn-background-color'] = '';
$defaults['header-woo-cart-btn-text-hover-color'] = '';
$defaults['header-woo-cart-btn-bg-hover-color'] = '';
// Cart tray > Checkout Button styles.
$defaults['header-woo-checkout-btn-text-color'] = '';
$defaults['header-woo-checkout-btn-background-color'] = '';
$defaults['header-woo-checkout-btn-text-hover-color'] = '';
$defaults['header-woo-checkout-btn-bg-hover-color'] = '';
/**
* EDD-Cart.
*/
$defaults['edd-header-cart-icon-style'] = 'none';
$defaults['edd-header-cart-icon-color'] = '';
$defaults['edd-header-cart-icon-radius'] = 3;
$defaults['edd-header-cart-total-display'] = true;
$defaults['edd-header-cart-title-display'] = true;
// Cart tray > General Color styles.
$defaults['header-edd-cart-text-color'] = '';
$defaults['header-edd-cart-link-color'] = '';
$defaults['header-edd-cart-background-color'] = '';
$defaults['header-edd-cart-separator-color'] = '';
// Cart tray > Checkout Button styles.
$defaults['header-edd-checkout-btn-text-color'] = '';
$defaults['header-edd-checkout-btn-background-color'] = '';
$defaults['header-edd-checkout-btn-text-hover-color'] = '';
$defaults['header-edd-checkout-btn-bg-hover-color'] = '';
/**
* Account element.
*/
$defaults['header-account-type'] = 'default';
$defaults['header-account-login-style'] = 'icon';
$defaults['header-account-action-type'] = 'link';
$defaults['header-account-link-type'] = 'default';
$defaults['header-account-logout-style'] = 'icon';
$defaults['header-account-logged-out-text'] = __( 'Log In', 'astra' );
$defaults['header-account-logged-in-text'] = __( 'My Account', 'astra' );
$defaults['header-account-logout-action'] = 'link';
$defaults['header-account-image-width'] = array(
'desktop' => '40',
'tablet' => '',
'mobile' => '',
);
$defaults['header-account-icon-size'] = array(
'desktop' => 18,
'tablet' => 18,
'mobile' => 18,
);
$defaults['header-account-icon-color'] = '';
$defaults['header-account-login-link'] = array(
'url' => '',
'new_tab' => false,
'link_rel' => '',
);
$defaults['header-account-logout-link'] = array(
'url' => esc_url( wp_login_url() ),
'new_tab' => false,
'link_rel' => '',
);
$defaults['font-size-section-header-account'] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
$defaults['header-account-type-text-color'] = '';
$defaults['header-account-woo-menu'] = false;
$defaults['cloned-component-track'] = Astra_Builder_Helper::$component_count_array;
return $defaults;
}
/**
* Prepare Button Defaults.
*
* @param array $defaults defaults.
* @param integer $index index.
*/
function prepare_button_defaults( $defaults, $index ) {
$_prefix = 'button' . $index;
$defaults[ 'header-' . $_prefix . '-text' ] = __( 'Button', 'astra' );
$defaults[ 'header-' . $_prefix . '-link-option' ] = array(
'url' => apply_filters( 'astra_site_url', 'https://www.wpastra.com' ),
'new_tab' => false,
'link_rel' => '',
);
$defaults[ 'header-' . $_prefix . '-font-family' ] = 'inherit';
$defaults[ 'header-' . $_prefix . '-font-weight' ] = 'inherit';
$defaults[ 'header-' . $_prefix . '-text-transform' ] = '';
$defaults[ 'header-' . $_prefix . '-line-height' ] = '';
$defaults[ 'header-' . $_prefix . '-font-size' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
$defaults[ 'header-' . $_prefix . '-text-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'header-' . $_prefix . '-back-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'header-' . $_prefix . '-text-h-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'header-' . $_prefix . '-back-h-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'header-' . $_prefix . '-padding' ] = array(
'desktop' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'tablet' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'mobile' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
$defaults[ 'header-' . $_prefix . '-border-size' ] = array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
);
$defaults[ 'header-' . $_prefix . '-border-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'header-' . $_prefix . '-border-radius' ] = '';
$_prefix = 'button' . $index;
$defaults[ 'footer-' . $_prefix . '-text' ] = __( 'Button', 'astra' );
$defaults[ 'footer-' . $_prefix . '-link-option' ] = array(
'url' => apply_filters( 'astra_site_url', 'https://www.wpastra.com' ),
'new_tab' => false,
'link_rel' => '',
);
$defaults[ 'footer-' . $_prefix . '-font-family' ] = 'inherit';
$defaults[ 'footer-' . $_prefix . '-font-weight' ] = 'inherit';
$defaults[ 'footer-' . $_prefix . '-text-transform' ] = '';
$defaults[ 'footer-' . $_prefix . '-line-height' ] = '';
$defaults[ 'footer-' . $_prefix . '-font-size' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
$defaults[ 'footer-' . $_prefix . '-text-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'footer-' . $_prefix . '-back-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'footer-' . $_prefix . '-text-h-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'footer-' . $_prefix . '-back-h-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'footer-' . $_prefix . '-padding' ] = array(
'desktop' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'tablet' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'mobile' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
$defaults[ 'footer-' . $_prefix . '-border-size' ] = array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
);
$defaults[ 'footer-' . $_prefix . '-border-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'footer-' . $_prefix . '-border-radius' ] = '';
$defaults[ 'footer-button-' . $index . '-alignment' ] = array(
'desktop' => 'center',
'tablet' => 'center',
'mobile' => 'center',
);
return $defaults;
}
/**
* Prepare HTML Defaults.
*
* @param array $defaults defaults.
* @param integer $index index.
*/
function prepare_html_defaults( $defaults, $index ) {
$_section = 'section-hb-html-' . $index;
$defaults[ 'header-html-' . $index ] = __( 'Insert HTML text here.', 'astra' );
$defaults[ 'header-html-' . $index . 'color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'header-html-' . $index . 'link-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'header-html-' . $index . 'link-h-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'font-size-' . $_section ] = array(
'desktop' => 15,
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
$defaults[ 'font-weight-' . $_section ] = 'inherit';
$defaults[ 'font-family-' . $_section ] = 'inherit';
$defaults[ 'line-height-' . $_section ] = '';
$defaults[ 'text-transform-' . $_section ] = '';
$_section = 'section-fb-html-' . $index;
$defaults[ 'footer-html-' . $index ] = __( 'Insert HTML text here.', 'astra' );
$defaults[ 'footer-html-' . $index . 'color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'footer-html-' . $index . 'link-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'footer-html-' . $index . 'link-h-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'font-size-' . $_section ] = array(
'desktop' => 15,
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
$defaults[ 'footer-html-' . $index . '-alignment' ] = array(
'desktop' => 'center',
'tablet' => 'center',
'mobile' => 'center',
);
$defaults[ 'font-size-' . $_section ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
$defaults[ 'font-weight-' . $_section ] = 'inherit';
$defaults[ 'font-family-' . $_section ] = 'inherit';
$defaults[ 'text-transform-' . $_section ] = '';
$defaults[ 'line-height-' . $_section ] = '';
return $defaults;
}
/**
* Prepare Social Icon Defaults.
*
* @param array $defaults defaults.
* @param integer $index index.
*/
function prepare_social_icon_defaults( $defaults, $index ) {
$defaults[ 'header-social-' . $index . '-space' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'header-social-' . $index . '-bg-space' ] = '';
$defaults[ 'header-social-' . $index . '-size' ] = array(
'desktop' => 18,
'tablet' => '',
'mobile' => '',
);
$defaults[ 'header-social-' . $index . '-radius' ] = '';
$defaults[ 'header-social-' . $index . '-color' ] = '';
$defaults[ 'header-social-' . $index . '-h-color' ] = '';
$defaults[ 'header-social-' . $index . '-bg-color' ] = '';
$defaults[ 'header-social-' . $index . '-bg-h-color' ] = '';
$defaults[ 'header-social-' . $index . '-label-toggle' ] = false;
$defaults[ 'header-social-' . $index . '-color-type' ] = 'custom';
$defaults[ 'font-size-section-hb-social-icons-' . $index ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
$defaults[ 'header-social-icons-' . $index ] = array(
'items' =>
array(
array(
'id' => 'facebook',
'enabled' => true,
'source' => 'icon',
'url' => '',
'color' => '#557dbc',
'background' => 'transparent',
'icon' => 'facebook',
'label' => 'Facebook',
),
array(
'id' => 'twitter',
'enabled' => true,
'source' => 'icon',
'url' => '',
'color' => '#7acdee',
'background' => 'transparent',
'icon' => 'twitter',
'label' => 'Twitter',
),
array(
'id' => 'instagram',
'enabled' => true,
'source' => 'icon',
'url' => '',
'color' => '#8a3ab9',
'background' => 'transparent',
'icon' => 'instagram',
'label' => 'Instagram',
),
),
);
$defaults[ 'footer-social-' . $index . '-space' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'footer-social-' . $index . '-bg-space' ] = '';
$defaults[ 'footer-social-' . $index . '-size' ] = array(
'desktop' => 18,
'tablet' => '',
'mobile' => '',
);
$defaults[ 'footer-social-' . $index . '-radius' ] = '';
$defaults[ 'footer-social-' . $index . '-color' ] = '';
$defaults[ 'footer-social-' . $index . '-h-color' ] = '';
$defaults[ 'footer-social-' . $index . '-bg-color' ] = '';
$defaults[ 'footer-social-' . $index . '-bg-h-color' ] = '';
$defaults[ 'footer-social-' . $index . '-label-toggle' ] = false;
$defaults[ 'footer-social-' . $index . '-color-type' ] = 'custom';
$defaults[ 'font-size-section-fb-social-icons-' . $index ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
$defaults[ 'footer-social-icons-' . $index ] = array(
'items' =>
array(
array(
'id' => 'facebook',
'enabled' => true,
'source' => 'icon',
'url' => '',
'color' => '#557dbc',
'background' => 'transparent',
'icon' => 'facebook',
'label' => 'Facebook',
),
array(
'id' => 'twitter',
'enabled' => true,
'source' => 'icon',
'url' => '',
'color' => '#7acdee',
'background' => 'transparent',
'icon' => 'twitter',
'label' => 'Twitter',
),
array(
'id' => 'instagram',
'enabled' => true,
'source' => 'icon',
'url' => '',
'color' => '#8a3ab9',
'background' => 'transparent',
'icon' => 'instagram',
'label' => 'Instagram',
),
),
);
$defaults[ 'footer-social-' . $index . '-alignment' ] = array(
'desktop' => 'center',
'tablet' => 'center',
'mobile' => 'center',
);
return $defaults;
}
/**
* Prepare Widget Defaults.
*
* @param array $defaults defaults.
* @param integer $index index.
*/
function prepare_widget_defaults( $defaults, $index ) {
// Widget Header defaults.
// Colors.
$defaults[ 'header-widget-' . $index . '-title-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'header-widget-' . $index . '-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'header-widget-' . $index . '-link-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'header-widget-' . $index . '-link-h-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
// Title Typography.
$defaults[ 'header-widget-' . $index . '-font-family' ] = 'inherit';
$defaults[ 'header-widget-' . $index . '-font-weight' ] = 'inherit';
$defaults[ 'header-widget-' . $index . '-text-transform' ] = '';
$defaults[ 'header-widget-' . $index . '-line-height' ] = '';
$defaults[ 'header-widget-' . $index . '-font-size' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
// Content Typography.
$defaults[ 'header-widget-' . $index . '-content-font-family' ] = 'inherit';
$defaults[ 'header-widget-' . $index . '-content-font-weight' ] = 'inherit';
$defaults[ 'header-widget-' . $index . '-content-text-transform' ] = '';
$defaults[ 'header-widget-' . $index . '-content-line-height' ] = '';
$defaults[ 'header-widget-' . $index . '-content-font-size' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
// Widget Footer defaults.
// Colors.
$defaults[ 'footer-widget-' . $index . '-title-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'footer-widget-' . $index . '-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'footer-widget-' . $index . '-link-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'footer-widget-' . $index . '-link-h-color' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
// Title Typography.
$defaults[ 'footer-widget-' . $index . '-font-family' ] = 'inherit';
$defaults[ 'footer-widget-' . $index . '-font-weight' ] = 'inherit';
$defaults[ 'footer-widget-' . $index . '-text-transform' ] = '';
$defaults[ 'footer-widget-' . $index . '-line-height' ] = '';
$defaults[ 'footer-widget-' . $index . '-font-size' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
// Content Typography.
$defaults[ 'footer-widget-' . $index . '-content-font-family' ] = 'inherit';
$defaults[ 'footer-widget-' . $index . '-content-font-weight' ] = 'inherit';
$defaults[ 'footer-widget-' . $index . '-content-text-transform' ] = '';
$defaults[ 'footer-widget-' . $index . '-content-line-height' ] = '';
$defaults[ 'footer-widget-' . $index . '-content-font-size' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
$defaults[ 'footer-widget-alignment-' . $index ] = array(
'desktop' => 'left',
'tablet' => 'center',
'mobile' => 'center',
);
return $defaults;
}
/**
* Prepare menu Defaults.
*
* @param array $defaults defaults.
* @param integer $index index.
*/
function prepare_menu_defaults( $defaults, $index ) {
$_prefix = 'menu' . $index;
// Specify all the default values for Menu from here.
$defaults[ 'header-' . $_prefix . '-bg-color' ] = '';
$defaults[ 'header-' . $_prefix . '-color' ] = '';
$defaults[ 'header-' . $_prefix . '-h-bg-color' ] = '';
$defaults[ 'header-' . $_prefix . '-h-color' ] = '';
$defaults[ 'header-' . $_prefix . '-a-bg-color' ] = '';
$defaults[ 'header-' . $_prefix . '-a-color' ] = '';
$defaults[ 'header-' . $_prefix . '-bg-obj-responsive' ] = array(
'desktop' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
'tablet' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
'mobile' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'repeat',
'background-position' => 'center center',
'background-size' => 'auto',
'background-attachment' => 'scroll',
),
);
$defaults[ 'header-' . $_prefix . '-color-responsive' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'header-' . $_prefix . '-h-bg-color-responsive' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'header-' . $_prefix . '-h-color-responsive' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'header-' . $_prefix . '-a-bg-color-responsive' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'header-' . $_prefix . '-a-color-responsive' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
);
$defaults[ 'header-' . $_prefix . '-menu-hover-animation' ] = '';
$defaults[ 'header-' . $_prefix . '-submenu-container-animation' ] = 'fade';
/**
* Submenu
*/
$defaults[ 'header-' . $_prefix . '-submenu-item-border' ] = false;
$defaults[ 'header-' . $_prefix . '-submenu-item-b-size' ] = '1';
$defaults[ 'header-' . $_prefix . '-submenu-item-b-color' ] = '#eaeaea';
$defaults[ 'header-' . $_prefix . '-submenu-border-radius' ] = '';
$defaults[ 'header-' . $_prefix . '-submenu-top-offset' ] = '';
$defaults[ 'header-' . $_prefix . '-submenu-width' ] = '';
$defaults[ 'header-' . $_prefix . '-submenu-border' ] = array(
'top' => 2,
'bottom' => 0,
'left' => 0,
'right' => 0,
);
/**
* Menu Stack on Mobile.
*/
$defaults[ 'header-' . $_prefix . '-menu-stack-on-mobile' ] = true;
/**
* Menu - Typography.
*/
$defaults[ 'header-' . $_prefix . '-font-size' ] = array(
'desktop' => '',
'tablet' => '',
'mobile' => '',
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
$defaults[ 'header-' . $_prefix . '-font-weight' ] = 'inherit';
$defaults[ 'header-' . $_prefix . '-font-family' ] = 'inherit';
$defaults[ 'header-' . $_prefix . '-text-transform' ] = '';
$defaults[ 'header-' . $_prefix . '-line-height' ] = '';
/**
* Header Types - Defaults
*/
$defaults['transparent-header-main-sep'] = '';
$defaults['transparent-header-main-sep-color'] = '';
return $defaults;
}/**
* Site_Identity for Astra theme.
*
* @package astra-builder
* @author Astra
* @copyright Copyright (c) 2020, Astra
* @link https://wpastra.com/
* @since 3.0.0
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
define( 'ASTRA_HEADER_SITE_IDENTITY_DIR', ASTRA_THEME_DIR . 'inc/builder/type/header/site-identity' );
define( 'ASTRA_HEADER_SITE_IDENTITY_URI', ASTRA_THEME_URI . 'inc/builder/type/header/site-identity' );
/**
* Heading Initial Setup
*
* @since 3.0.0
*/
class Astra_Header_Site_Identity_Component {
/**
* Constructor function that initializes required actions and hooks
*/
public function __construct() {
// @codingStandardsIgnoreStart WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound
require_once ASTRA_HEADER_SITE_IDENTITY_DIR . '/class-astra-header-site-identity-component-loader.php';
// Include front end files.
if ( ! is_admin() ) {
require_once ASTRA_HEADER_SITE_IDENTITY_DIR . '/dynamic-css/dynamic.css.php';
}
// @codingStandardsIgnoreEnd WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound
}
}
/**
* Kicking this off by creating an object.
*/
new Astra_Header_Site_Identity_Component();/*! Select2 4.1.0-rc.0 | https://github.com/select2/select2/blob/master/LICENSE.md */
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/cs",[],function(){function e(e,n){switch(e){case 2:return n?"dva":"dvě";case 3:return"tři";case 4:return"čtyři"}return""}return{errorLoading:function(){return"Výsledky nemohly být načteny."},inputTooLong:function(n){var t=n.input.length-n.maximum;return 1==t?"Prosím, zadejte o jeden znak méně.":t<=4?"Prosím, zadejte o "+e(t,!0)+" znaky méně.":"Prosím, zadejte o "+t+" znaků méně."},inputTooShort:function(n){var t=n.minimum-n.input.length;return 1==t?"Prosím, zadejte ještě jeden znak.":t<=4?"Prosím, zadejte ještě další "+e(t,!0)+" znaky.":"Prosím, zadejte ještě dalších "+t+" znaků."},loadingMore:function(){return"Načítají se další výsledky…"},maximumSelected:function(n){var t=n.maximum;return 1==t?"Můžete zvolit jen jednu položku.":t<=4?"Můžete zvolit maximálně "+e(t,!1)+" položky.":"Můžete zvolit maximálně "+t+" položek."},noResults:function(){return"Nenalezeny žádné položky."},searching:function(){return"Vyhledávání…"},removeAllItems:function(){return"Odstraňte všechny položky"}}}),e.define,e.require}();/**
* Account Styling Loader for Astra theme.
*
* @package astra-builder
* @author Astra
* @copyright Copyright (c) 2020, Astra
* @link https://wpastra.com/
* @since 3.0.0
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
/**
* Customizer Initialization
*
* @since 3.0.0
*/
class Astra_Header_Account_Component_Loader {
/**
* Constructor
*
* @since 3.0.0
*/
public function __construct() {
add_action( 'customize_preview_init', array( $this, 'preview_scripts' ), 110 );
}
/**
* Customizer Preview
*
* @since 3.0.0
*/
public function preview_scripts() {
/**
* Load unminified if SCRIPT_DEBUG is true.
*/
/* Directory and Extension */
$dir_name = ( SCRIPT_DEBUG ) ? 'unminified' : 'minified';
$file_prefix = ( SCRIPT_DEBUG ) ? '' : '.min';
wp_enqueue_script( 'astra-header-builder-account-customizer-preview-js', ASTRA_HEADER_ACCOUNT_URI . '/assets/js/customizer-preview.js', array( 'customize-preview', 'astra-customizer-preview-js' ), ASTRA_THEME_VERSION, true );
}
}
/**
* Kicking this off by creating the object of the class.
*/
new Astra_Header_Account_Component_Loader();/**
* Social Icon Styling Loader for Astra theme.
*
* @package astra-builder
* @author Astra
* @copyright Copyright (c) 2020, Astra
* @link https://wpastra.com/
* @since 3.0.0
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
/**
* Customizer Initialization
*
* @since 3.0.0s
*/
class Astra_Header_Social_Icon_Component_Loader {
/**
* Constructor
*
* @since 3.0.0s
*/
public function __construct() {
add_action( 'customize_preview_init', array( $this, 'preview_scripts' ), 110 );
}
/**
* Customizer Preview
*
* @since 3.0.0s
*/
public function preview_scripts() {
/**
* Load unminified if SCRIPT_DEBUG is true.
*/
/* Directory and Extension */
$dir_name = ( SCRIPT_DEBUG ) ? 'unminified' : 'minified';
$file_prefix = ( SCRIPT_DEBUG ) ? '' : '.min';
wp_enqueue_script( 'astra-heading-social-icon-customizer-preview-js', ASTRA_HEADER_SOCIAL_ICON_URI . '/assets/js/customizer-preview.js', array( 'customize-preview', 'astra-customizer-preview-js' ), ASTRA_THEME_VERSION, true );
// Localize variables for Astra Breakpoints JS.
wp_localize_script(
'astra-heading-social-icon-customizer-preview-js',
'astraBuilderHeaderSocial',
array(
'tablet_break_point' => astra_get_tablet_breakpoint(),
'mobile_break_point' => astra_get_mobile_breakpoint(),
'component_limit' => defined( 'ASTRA_EXT_VER' ) ? Astra_Builder_Helper::$component_limit : Astra_Builder_Helper::$num_of_header_social_icons,
)
);
}
}
/**
* Kicking this off by creating the object of the class.
*/
new Astra_Header_Social_Icon_Component_Loader();/**
* WIdget control - Dynamic CSS
*
* @package Astra Builder
* @since 3.0.0
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
/**
* Heading Colors
*/
add_filter( 'astra_dynamic_theme_css', 'astra_hb_widget_dynamic_css' );
/**
* Dynamic CSS
*
* @param string $dynamic_css Astra Dynamic CSS.
* @param string $dynamic_css_filtered Astra Dynamic CSS Filters.
* @return String Generated dynamic CSS for Heading Colors.
*
* @since 3.0.0
*/
function astra_hb_widget_dynamic_css( $dynamic_css, $dynamic_css_filtered = '' ) {
$dynamic_css .= Astra_Widget_Component_Dynamic_CSS::astra_widget_dynamic_css( 'header' );
return $dynamic_css;
}/**
* Mobile Trigger.
*
* @package astra-builder
* @author Brainstorm Force
* @copyright Copyright (c) 2020, Brainstorm Force
* @link https://www.brainstormforce.com
* @since 3.0.0
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
define( 'ASTRA_MOBILE_TRIGGER_DIR', ASTRA_THEME_DIR . 'inc/builder/type/header/mobile-trigger' );
define( 'ASTRA_MOBILE_TRIGGER_URI', ASTRA_THEME_URI . 'inc/builder/type/header/mobile-trigger' );
/**
* Mobile Trigger Initial Setup
*
* @since 3.0.0
*/
class Astra_Mobile_Trigger {
/**
* Constructor function that initializes required actions and hooks.
*/
public function __construct() {
// @codingStandardsIgnoreStart WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound
require_once ASTRA_MOBILE_TRIGGER_DIR . '/class-astra-mobile-trigger-loader.php';
// Include front end files.
if ( ! is_admin() ) {
require_once ASTRA_MOBILE_TRIGGER_DIR . '/dynamic-css/dynamic.css.php';
}
// @codingStandardsIgnoreEnd WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound
}
}
/**
* Kicking this off by creating an object.
*/
new Astra_Mobile_Trigger();/**
* Above Header - Dynamic CSS
*
* @package astra-builder
* @since 3.0.0
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
/**
* Above Header Row.
*/
add_filter( 'astra_dynamic_theme_css', 'astra_above_header_row_setting', 11 );
/**
* Above Header Row - Dynamic CSS
*
* @param string $dynamic_css Astra Dynamic CSS.
* @param string $dynamic_css_filtered Astra Dynamic CSS Filters.
* @return String Generated dynamic CSS for Heading Colors.
*
* @since 3.0.0
*/
function astra_above_header_row_setting( $dynamic_css, $dynamic_css_filtered = '' ) {
if ( ! is_customize_preview() && ( ! Astra_Builder_helper::is_row_empty( 'above', 'header', 'desktop' ) && ! Astra_Builder_helper::is_row_empty( 'above', 'header', 'mobile' ) ) ) {
return $dynamic_css;
}
$parse_css = '';
// Common CSS options.
$hba_header_height = astra_get_option( 'hba-header-height' );
$hba_header_divider = astra_get_option( 'hba-header-separator' );
$hba_border_color = astra_get_option( 'hba-header-bottom-border-color' );
// Background CSS options.
$hba_header_bg_obj = astra_get_option( 'hba-header-bg-obj-responsive' );
$desktop_background = isset( $hba_header_bg_obj['desktop']['background-color'] ) ? $hba_header_bg_obj['desktop']['background-color'] : '';
$tablet_background = isset( $hba_header_bg_obj['tablet']['background-color'] ) ? $hba_header_bg_obj['tablet']['background-color'] : '';
$mobile_background = isset( $hba_header_bg_obj['mobile']['background-color'] ) ? $hba_header_bg_obj['mobile']['background-color'] : '';
// Header Height.
$hba_header_height_desktop = ( isset( $hba_header_height['desktop'] ) && ! empty( $hba_header_height['desktop'] ) ) ? $hba_header_height['desktop'] : '';
$hba_header_height_tablet = ( isset( $hba_header_height['tablet'] ) && ! empty( $hba_header_height['tablet'] ) ) ? $hba_header_height['tablet'] : '';
$hba_header_height_mobile = ( isset( $hba_header_height['mobile'] ) && ! empty( $hba_header_height['mobile'] ) ) ? $hba_header_height['mobile'] : '';
// Spacing CSS options.
$hba_header_spacing = astra_get_option( 'hba-header-spacing' );
/**
* Above Header General options
*/
$common_css_output = array(
'.ast-above-header-bar' => array(
'border-bottom-width' => astra_get_css_value( $hba_header_divider, 'px' ),
'border-bottom-color' => esc_attr( $hba_border_color ),
'border-bottom-style' => 'solid',
),
'.ast-mobile-header-wrap .ast-above-header-bar , .ast-above-header-bar .site-above-header-wrap' => array(
'min-height' => astra_get_css_value( $hba_header_height_desktop, 'px' ),
),
'.ast-desktop .ast-above-header-bar .main-header-menu > .menu-item' => array(
'line-height' => astra_get_css_value( $hba_header_height_desktop, 'px' ),
),
'.ast-desktop .ast-above-header-bar .ast-header-woo-cart, .ast-desktop .ast-above-header-bar .ast-header-edd-cart' => array(
'line-height' => astra_get_css_value( $hba_header_height_desktop, 'px' ),
),
);
$parse_css .= astra_parse_css( $common_css_output );
// Above Header Background Responsive - Desktop.
$desktop_bg = array(
'.ast-above-header.ast-above-header-bar' => astra_get_responsive_background_obj( $hba_header_bg_obj, 'desktop' ),
'.ast-header-break-point .ast-above-header-bar' => array(
'background-color' => esc_attr( $desktop_background ),
),
);
$parse_css .= astra_parse_css( $desktop_bg );
// Above Header Background Responsive - Tablet.
$tablet_bg = array(
'.ast-above-header.ast-above-header-bar' => astra_get_responsive_background_obj( $hba_header_bg_obj, 'tablet' ),
'.ast-header-break-point .ast-above-header-bar' => array(
'background-color' => esc_attr( $tablet_background ),
),
'.ast-mobile-header-wrap .ast-above-header-bar , .ast-above-header-bar .site-above-header-wrap' => array(
'min-height' => astra_get_css_value( $hba_header_height_tablet, 'px' ),
),
);
$parse_css .= astra_parse_css( $tablet_bg, '', astra_get_tablet_breakpoint() );
// Above Header Background Responsive - Mobile.
$mobile_bg = array(
'.ast-above-header.ast-above-header-bar' => astra_get_responsive_background_obj( $hba_header_bg_obj, 'mobile' ),
'.ast-header-break-point .ast-above-header-bar' => array(
'background-color' => esc_attr( $mobile_background ),
),
'.ast-mobile-header-wrap .ast-above-header-bar , .ast-above-header-bar .site-above-header-wrap' => array(
'min-height' => astra_get_css_value( $hba_header_height_mobile, 'px' ),
),
);
$parse_css .= astra_parse_css( $mobile_bg, '', astra_get_mobile_breakpoint() );
// Trim white space for faster page loading.
$dynamic_css .= Astra_Enqueue_Scripts::trim_css( $parse_css );
$_section = 'section-above-header-builder';
$selector = '.site-above-header-wrap[data-section="ast_header_above"]';
$parent_selector = '.ast-above-header.ast-above-header-bar';
$dynamic_css .= Astra_Builder_Base_Dynamic_CSS::prepare_advanced_margin_padding_css( $_section, $parent_selector );
$dynamic_css .= Astra_Builder_Base_Dynamic_CSS::prepare_visibility_css( $_section, '.ast-above-header-bar', 'block', $mobile_tablet_default_display = 'grid' );
return $dynamic_css;
}/**
* Deprecated Hooks of Astra Theme.
*
* @package Astra
* @author Astra
* @copyright Copyright (c) 2020, Astra
* @link https://wpastra.com/
* @since Astra 1.0.23
*/
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
if ( ! function_exists( 'astra_do_action_deprecated' ) ) {
/**
* Astra Filter Deprecated
*
* @since 1.1.1
* @param string $tag The name of the filter hook.
* @param array $args Array of additional function arguments to be passed to apply_filters().
* @param string $version The version of WordPress that deprecated the hook.
* @param string $replacement Optional. The hook that should have been used. Default false.
* @param string $message Optional. A message regarding the change. Default null.
*/
function astra_do_action_deprecated( $tag, $args, $version, $replacement = false, $message = null ) {
if ( function_exists( 'do_action_deprecated' ) ) { /* WP >= 4.6 */
do_action_deprecated( $tag, $args, $version, $replacement, $message );
} else {
do_action_ref_array( $tag, $args );
}
}
}/**
* Plugin Name: Gutenberg Starter Templates
* Plugin URI: https://wpastra.com/
* Description: Gutenberg single page templates, and blocks library to imported your website easily.
* Version: 1.1.9
* Author: Brainstorm Force
* Author URI: https://www.brainstormforce.com
* Text Domain: ast-block-templates
*
* @package Ast Block Templates
*/
if ( class_exists( 'Ast_Block_Templates' ) ) {
return;
}
if ( apply_filters( 'ast_block_templates_disable', false ) ) {
return;
}
// Set constants.
if ( ! defined( 'AST_BLOCK_TEMPLATES_LIBRARY_URL' ) ) {
define( 'AST_BLOCK_TEMPLATES_LIBRARY_URL', apply_filters( 'ast_block_templates_library_url', 'https://websitedemos.net/' ) );
}
define( 'AST_BLOCK_TEMPLATES_VER', '1.1.9' );
define( 'AST_BLOCK_TEMPLATES_FILE', __FILE__ );
define( 'AST_BLOCK_TEMPLATES_BASE', plugin_basename( AST_BLOCK_TEMPLATES_FILE ) );
define( 'AST_BLOCK_TEMPLATES_DIR', plugin_dir_path( AST_BLOCK_TEMPLATES_FILE ) );
define( 'AST_BLOCK_TEMPLATES_URI', plugins_url( '/', AST_BLOCK_TEMPLATES_FILE ) );
require_once AST_BLOCK_TEMPLATES_DIR . 'classes/class-ast-block-templates.php';