Current File : /var/www/tusveterinarios/wp-content/plugins/astra-addon/classes/class-astra-addon-update.php |
<?php
/**
* Astra Addon Update
*
* @package Astra Addon
*/
if ( ! class_exists( 'Astra_Addon_Update' ) ) {
/**
* Astra_Addon_Update initial setup
*
* @since 1.0.0
*/
class Astra_Addon_Update {
/**
* Class instance.
*
* @access private
* @var $instance Class 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() {
// Theme Updates.
add_action( 'astra_update_before', __CLASS__ . '::init' );
}
/**
* Implement addon update logic.
*
* @since 1.0.0
* @return void
*/
public static function init() {
do_action( 'astra_addon_update_before' );
// Get auto saved version number.
$saved_version = self::astra_addon_stored_version();
// 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_EXT_VER, '=' ) ) {
return;
}
// Update to older version than 1.0.0-beta.6 version.
if ( version_compare( $saved_version, '1.0.0-beta.6', '<' ) ) {
self::v_1_0_0_beta_6();
}
// Update to older version than 1.0.0-beta.7 version.
if ( version_compare( $saved_version, '1.0.0-beta.7', '<' ) ) {
self::v_1_0_0_beta_7();
}
// Update to older version than 1.0.0-rc.3 version.
if ( version_compare( $saved_version, '1.0.0-rc.3', '<' ) ) {
self::v_1_0_0_rc_3();
}
// Update to older version than 1.0.0-rc.6 version.
if ( version_compare( $saved_version, '1.0.0-rc.6', '<' ) ) {
self::v_1_0_0_rc_6();
}
// Update to older version than 1.0.0-rc.7 version.
if ( version_compare( $saved_version, '1.0.0-rc.7', '<' ) && version_compare( ASTRA_THEME_VERSION, '1.0.22', '>=' ) ) {
self::v_1_0_0_rc_7();
}
// Update to older version than 1.0.0-rc.9 version.
if ( version_compare( $saved_version, '1.0.0-rc.9', '<' ) ) {
self::v_1_0_0_rc_9();
}
// Footer Widget Spacing Top/Right/Bottom/Left updated for responsive devices.
if ( version_compare( $saved_version, '1.2.0-beta.1', '<' ) ) {
self::v_1_2_0_beta_1();
}
// Site Lauout Padded layout Top/Right/Bottom/Left updated for responsive devices.
if ( version_compare( $saved_version, '1.2.0-beta.2', '<' ) ) {
self::v_1_2_0_beta_2();
}
// Update to older version than 1.2.0-beta.4 version.
if ( version_compare( $saved_version, '1.2.0-beta.4', '<' ) ) {
self::v_1_2_0_beta_4();
}
// Update to older version than 1.3.0-beta.4 version.
if ( version_compare( $saved_version, '1.3.0-beta.4', '<' ) ) {
self::v_1_3_0_beta_4();
}
// Update to older version than 1.3.0 version.
if ( version_compare( $saved_version, '1.3.0', '<' ) ) {
self::v_1_3_0();
}
// Update to older version than 1.4.0-beta.3 version.
if ( version_compare( $saved_version, '1.4.0-beta.3', '<' ) ) {
self::v_1_4_0_beta_3();
}
// Update to older version than 1.4.0-beta.4 version.
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.1', '<' ) ) {
self::v_1_4_1();
}
if ( version_compare( $saved_version, '1.4.8', '<' ) ) {
self::v_1_4_8();
}
if ( version_compare( $saved_version, '1.6.0-beta.4', '<' ) ) {
self::v_1_6_0_beta_4();
}
if ( version_compare( $saved_version, '1.6.0', '<' ) ) {
self::v_1_6_0();
}
if ( version_compare( $saved_version, '1.6.1', '<' ) ) {
self::v_1_6_1();
}
if ( version_compare( $saved_version, '1.6.10', '<' ) ) {
self::v_1_6_10();
}
if ( version_compare( $saved_version, '1.8.0-beta.1', '<' ) ) {
self::v1_8_0();
}
if ( version_compare( $saved_version, '1.8.8', '<' ) ) {
self::v1_8_8();
}
}
/**
* Return Astra Addon saved version.
*/
public static function astra_addon_stored_version() {
$theme_options = get_option( 'astra-settings' );
$value = ( isset( $theme_options['astra-addon-auto-version'] ) && '' !== $theme_options['astra-addon-auto-version'] ) ? $theme_options['astra-addon-auto-version'] : false;
return $value;
}
/**
* Update options of older version than 1.0.0-beta.6.
*
* @since 1.0.0-beta.6
* @return void
*/
public static function v_1_0_0_beta_6() {
$options = array(
'footer-adv' => 'layout-3',
'footer-adv-area-padding' => array(
'top' => 50,
'right' => '',
'bottom' => 50,
'left' => '',
),
);
// Get all supported post Types. [excluding 'page', 'post'].
$post_types = astra_addon_get_supported_posts();
foreach ( $post_types as $slug => $label ) {
$options[ 'single-' . esc_attr( $slug ) . '-content-layout' ] = 'content-boxed-container';
}
// Get all supported post Types which HAVE TAXONOMIES. [excluding 'page', 'post'].
$post_types_tax = astra_addon_get_supported_posts( true );
foreach ( $post_types_tax as $index => $slug ) {
$options[ 'archive-' . esc_attr( $slug ) . '-content-layout' ] = 'content-boxed-container';
}
$astra_options = get_option( 'astra-settings', array() );
foreach ( $options as $key => $value ) {
if ( ! isset( $astra_options[ $key ] ) ) {
$astra_options[ $key ] = $value;
}
}
update_option( 'astra-settings', $astra_options );
}
/**
* Update options of older version than 1.0.0-beta.7.
*
* @since 1.0.0-beta.7
* @return void
*/
public static function v_1_0_0_beta_7() {
$options = array(
'footer-adv' => 'disabled',
);
// Get all supported post Types. [excluding 'page', 'post'].
$post_types = astra_addon_get_supported_posts();
foreach ( $post_types as $slug => $label ) {
$options[ 'single-' . esc_attr( $slug ) . '-sidebar-layout' ] = 'right-sidebar';
}
// Get all supported post Types which HAVE TAXONOMIES. [excluding 'page', 'post'].
$post_types_tax = astra_addon_get_supported_posts( true );
foreach ( $post_types_tax as $index => $slug ) {
$options[ 'archive-' . esc_attr( $slug ) . '-sidebar-layout' ] = 'right-sidebar';
}
$astra_options = get_option( 'astra-settings', array() );
foreach ( $options as $key => $value ) {
if ( ! isset( $astra_options[ $key ] ) ) {
$astra_options[ $key ] = $value;
}
}
update_option( 'astra-settings', $astra_options );
}
/**
* Update options of older version than 1.0.0-rc.3.
*
* @since 1.0.0-rc.3
* @return void
*/
public static function v_1_0_0_rc_3() {
$astra_options = get_option( 'astra-settings', array() );
if ( isset( $astra_options['sticky-header-mobile'] ) && 'enabled' == $astra_options['sticky-header-mobile'] ) {
unset( $astra_options['sticky-header-mobile'] );
$astra_options['sticky-header-on-devices'] = 'both';
}
update_option( 'astra-settings', $astra_options );
}
/**
* Update options of older version than 1.0.0-rc.6.
*
* @since 1.0.0-rc.3
* @return void
*/
public static function v_1_0_0_rc_6() {
// Get the site-wide option if we're in the network admin.
if ( is_multisite() ) {
$white_label = get_site_option( '_astra_ext_white_label' );
} else {
$white_label = get_option( '_astra_ext_white_label' );
}
// updated white label options.
$updated_branding = array();
if ( isset( $white_label['theme_name'] ) ) {
$updated_branding['astra']['name'] = $white_label['theme_name'];
}
if ( isset( $white_label['theme_desc'] ) ) {
$updated_branding['astra']['description'] = $white_label['theme_desc'];
}
if ( isset( $white_label['theme_author'] ) ) {
$updated_branding['astra-agency']['author'] = $white_label['theme_author'];
}
if ( isset( $white_label['theme_author_url'] ) ) {
$updated_branding['astra-agency']['author_url'] = $white_label['theme_author_url'];
}
if ( isset( $white_label['theme_screenshot'] ) ) {
$updated_branding['astra']['screenshot'] = $white_label['theme_screenshot'];
}
if ( isset( $white_label['plugin_name'] ) ) {
$updated_branding['astra-pro']['name'] = $white_label['plugin_name'];
}
if ( isset( $white_label['plugin_desc'] ) ) {
$updated_branding['astra-pro']['description'] = $white_label['plugin_desc'];
}
if ( isset( $white_label['plugin_licence'] ) ) {
$updated_branding['astra-agency']['licence'] = $white_label['plugin_licence'];
}
if ( isset( $white_label['hide_branding'] ) ) {
$updated_branding['astra-agency']['hide_branding'] = $white_label['hide_branding'];
}
// Update the site-wide option since we're in the network admin.
if ( is_multisite() ) {
update_site_option( '_astra_ext_white_label', $updated_branding );
} else {
update_option( '_astra_ext_white_label', $updated_branding );
}
}
/**
* Update options of older version than 1.0.0-rc.7.
*
* @since 1.0.0-rc.7
* @return void
*/
public static function v_1_0_0_rc_7() {
$astra_options = get_option( 'astra-settings', array() );
if ( ! empty( $astra_options['footer-bg-color'] ) && ! empty( $astra_options['footer-bg-img'] ) ) {
$astra_options['footer-bg-color-opc'] = ! empty( $astra_options['footer-bg-color-opc'] ) ? $astra_options['footer-bg-color-opc'] : '0.8';
$astra_options['footer-bg-color'] = astra_hex_to_rgba( $astra_options['footer-bg-color'], $astra_options['footer-bg-color-opc'] );
}
if ( ! empty( $astra_options['footer-adv-bg-color'] ) && ! empty( $astra_options['footer-adv-bg-img'] ) ) {
$astra_options['footer-adv-bg-color-opac'] = ! empty( $astra_options['footer-adv-bg-color-opac'] ) ? $astra_options['footer-adv-bg-color-opac'] : '0.8';
$astra_options['footer-adv-bg-color'] = astra_hex_to_rgba( $astra_options['footer-adv-bg-color'], $astra_options['footer-adv-bg-color-opac'] );
}
update_option( 'astra-settings', $astra_options );
}
/**
* Update options of older version than 1.0.0-rc.9.
*
* @since 1.0.0-rc.9
* @return void
*/
public static function v_1_0_0_rc_9() {
$query_args = array(
'post_type' => 'astra-advanced-hook',
'posts_per_page' => -1,
'fields' => 'ids',
);
$adv_hooks = new WP_Query( $query_args );
$layouts = $adv_hooks->posts;
if ( is_array( $layouts ) && ! empty( $layouts ) ) {
foreach ( $layouts as $key => $layout_id ) {
$hook_layout = get_post_meta( $layout_id, 'ast-advanced-hook-layout', true );
$hook_action = get_post_meta( $layout_id, 'ast-advanced-hook-action', true );
if ( '' != $hook_action && '' == $hook_layout ) {
update_post_meta( $layout_id, 'ast-advanced-hook-layout', 'hooks' );
}
}
}
wp_reset_postdata();
}
/**
* Update options of older version than 1.2.0-beta.1.
*
* Footer Widget Spacing Top/Right/Bottom/Left updated for responsive devices.
* Merge menu backward compatibility.
*
* @since 1.2.0-beta.1
*/
public static function v_1_2_0_beta_1() {
$options = array(
'footer-adv-area-padding' => array(
'top' => 70,
'right' => '',
'bottom' => 70,
'left' => '',
),
);
$astra_options = get_option( 'astra-settings', array() );
if ( 0 < count( $astra_options ) ) {
foreach ( $options as $key => $value ) {
if ( array_key_exists( $key, $astra_options ) ) {
$astra_options[ $key ] = array(
'desktop' => array(
'top' => $astra_options[ $key ]['top'],
'right' => $astra_options[ $key ]['right'],
'bottom' => $astra_options[ $key ]['bottom'],
'left' => $astra_options[ $key ]['left'],
),
'tablet' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'mobile' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
}
}
}
// Above Header Merge menu backward compatibility.
if ( ! isset( $astra_options['above-header-merge-menu'] ) ) {
$astra_options['above-header-merge-menu'] = true;
}
// Above Header Merge menu backward compatibility.
if ( ! isset( $astra_options['below-header-merge-menu'] ) ) {
$astra_options['below-header-merge-menu'] = true;
}
update_option( 'astra-settings', $astra_options );
}
/**
* Update options of older version than 1.2.0-beta.2.
*
* Padded Layout Spacing Top/Right/Bottom/Left updated for responsive devices.
*
* @since 1.2.0-beta.2
*/
public static function v_1_2_0_beta_2() {
$options = array(
'site-layout-padded-pad' => array(
'top' => 25,
'right' => 50,
'bottom' => 25,
'left' => 50,
),
);
$astra_options = get_option( 'astra-settings', array() );
if ( 0 < count( $astra_options ) ) {
foreach ( $options as $key => $value ) {
if ( array_key_exists( $key, $astra_options ) ) {
$astra_options[ $key ] = array(
'desktop' => array(
'top' => $astra_options[ $key ]['top'],
'right' => $astra_options[ $key ]['right'],
'bottom' => $astra_options[ $key ]['bottom'],
'left' => $astra_options[ $key ]['left'],
),
'tablet' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'mobile' => array(
'top' => '',
'right' => '',
'bottom' => '',
'left' => '',
),
'desktop-unit' => 'px',
'tablet-unit' => 'px',
'mobile-unit' => 'px',
);
}
}
}
update_option( 'astra-settings', $astra_options );
}
/**
* Update Sticky Header & Transparent Header Logo width options of older version than 1.2.0-beta.4.
*
* Responsive Sticky & Transparent Header Logo Width
*
* @since 1.2.0-beta.4
*/
public static function v_1_2_0_beta_4() {
$astra_options = get_option( 'astra-settings', array() );
// Trasnparent Header value to reponsive width option.
if ( isset( $astra_options['transparent-header-logo-width'] ) && ! is_array( $astra_options['transparent-header-logo-width'] ) ) {
$astra_options['transparent-header-logo-width'] = array(
'desktop' => $astra_options['transparent-header-logo-width'],
'tablet' => '',
'mobile' => '',
);
}
// Trasnparent Header value to reponsive width option.
if ( isset( $astra_options['sticky-header-logo-width'] ) && ! is_array( $astra_options['sticky-header-logo-width'] ) ) {
$astra_options['sticky-header-logo-width'] = array(
'desktop' => $astra_options['sticky-header-logo-width'],
'tablet' => '',
'mobile' => '',
);
}
update_option( 'astra-settings', $astra_options );
}
/**
* LifterLMS custom header menu.
*
* @since 1.3.0-beta.4
*/
public static function v_1_3_0_beta_4() {
$astra_options = get_option( ASTRA_THEME_SETTINGS, array() );
if ( isset( $astra_options['header-main-rt-section'] ) && 'lifterlms' == $astra_options['header-main-rt-section'] ) {
$astra_options['header-main-rt-section'] = 'none';
$astra_options['lifterlms-profile-link-enabled'] = true;
}
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-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['above-header-bg-obj'] = array(
'background-color' => isset( $astra_options['above-header-bg-color'] ) ? $astra_options['above-header-bg-color'] : '',
);
$astra_options['below-header-bg-obj'] = array(
'background-color' => isset( $astra_options['below-header-bg-color'] ) ? $astra_options['below-header-bg-color'] : '',
);
$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-settings', $astra_options );
}
/**
* 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() {
// Mobile Header - Border new param introduced for Top, Right, Bottom and left border.
$astra_options = get_option( 'astra-settings', array() );
if ( isset( $astra_options['mobile-header-menu-border'] ) ) {
if ( $astra_options['mobile-header-menu-border'] ) {
$astra_options['mobile-header-menu-all-border'] = array(
'top' => 1,
'right' => '',
'bottom' => 1,
'left' => '',
);
} else {
$astra_options['mobile-header-menu-all-border'] = array(
'top' => 0,
'right' => 0,
'bottom' => 0,
'left' => 0,
);
}
}
if ( isset( $astra_options['mobile-above-header-menu-border'] ) ) {
if ( $astra_options['mobile-above-header-menu-border'] ) {
$astra_options['mobile-above-header-menu-all-border'] = array(
'top' => 1,
'right' => '',
'bottom' => 1,
'left' => '',
);
} else {
$astra_options['mobile-above-header-menu-all-border'] = array(
'top' => 0,
'right' => 0,
'bottom' => 0,
'left' => 0,
);
}
}
if ( isset( $astra_options['mobile-below-header-menu-border'] ) ) {
if ( $astra_options['mobile-below-header-menu-border'] ) {
$astra_options['mobile-below-header-menu-all-border'] = array(
'top' => 1,
'right' => '',
'bottom' => 1,
'left' => '',
);
} else {
$astra_options['mobile-below-header-menu-all-border'] = array(
'top' => 0,
'right' => 0,
'bottom' => 0,
'left' => 0,
);
}
}
update_option( 'astra-settings', $astra_options );
}
/**
* Set different page header logo option when page header logo is set
*
* @since 1.4.0
*/
public static function update_header_layout_opts() {
$query_args = array(
'post_type' => 'astra_adv_header',
'posts_per_page' => -1,
'fields' => 'ids',
);
$adv_headers = new WP_Query( $query_args );
if ( isset( $adv_headers->posts ) && ! empty( $adv_headers->posts ) ) {
foreach ( $adv_headers->posts as $header ) {
$adv_header_design = get_post_meta( $header, 'ast-advanced-headers-design', true );
if ( ( isset( $adv_header_design['logo-id'] ) && '' !== $adv_header_design['logo-id'] ) || ( isset( $adv_header_design['retina-logo-id'] ) && '' !== $adv_header_design['retina-logo-id'] ) ) {
$adv_header_opts = get_post_meta( $header, 'ast-advanced-headers-layout', true );
$adv_header_opts['diff-header-logo'] = 'enabled';
update_post_meta( $header, 'ast-advanced-headers-layout', $adv_header_opts );
}
}
}
}
/**
* All Headers (Above Header, Primary menu and Below Header) options made responsive.
* All the existing value are moved inside the array
* All the Mobile Header Colors options are moved into the responsive option for tablet.
*
* @since 1.4.0-beta.4
*/
public static function v_1_4_0_beta_4() {
$astra_options = get_option( 'astra-settings', array() );
/**
* All Header , Above Header, Below Header Primary Header colors updated options values
*/
$headers_colors_options = array(
'header-bg-obj-responsive' => array(
'desktop' => array(
'background-color' => isset( $astra_options['header-bg-obj']['background-color'] ) ? $astra_options['header-bg-obj']['background-color'] : '',
'background-image' => isset( $astra_options['header-bg-obj']['background-image'] ) ? $astra_options['header-bg-obj']['background-image'] : '',
'background-repeat' => isset( $astra_options['header-bg-obj']['background-repeat'] ) ? $astra_options['header-bg-obj']['background-repeat'] : 'no-repeat',
'background-position' => isset( $astra_options['header-bg-obj']['background-position'] ) ? $astra_options['header-bg-obj']['background-position'] : 'center center',
'background-size' => isset( $astra_options['header-bg-obj']['background-size'] ) ? $astra_options['header-bg-obj']['background-size'] : 'cover',
'background-attachment' => isset( $astra_options['header-bg-obj']['background-attachment'] ) ? $astra_options['header-bg-obj']['background-attachment'] : 'scroll',
),
'tablet' => array(
'background-color' => isset( $astra_options['mobile-header-bg-obj']['background-color'] ) ? $astra_options['mobile-header-bg-obj']['background-color'] : '',
'background-image' => isset( $astra_options['mobile-header-bg-obj']['background-image'] ) ? $astra_options['mobile-header-bg-obj']['background-image'] : '',
'background-repeat' => isset( $astra_options['mobile-header-bg-obj']['background-repeat'] ) ? $astra_options['mobile-header-bg-obj']['background-repeat'] : 'no-repeat',
'background-position' => isset( $astra_options['mobile-header-bg-obj']['background-position'] ) ? $astra_options['mobile-header-bg-obj']['background-position'] : 'center center',
'background-size' => isset( $astra_options['mobile-header-bg-obj']['background-size'] ) ? $astra_options['mobile-header-bg-obj']['background-size'] : 'cover',
'background-attachment' => isset( $astra_options['mobile-header-bg-obj']['background-attachment'] ) ? $astra_options['mobile-header-bg-obj']['background-attachment'] : 'scroll',
),
'mobile' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'no-repeat',
'background-position' => 'center center',
'background-size' => 'cover',
'background-attachment' => 'scroll',
),
),
'above-header-bg-obj-responsive' => array(
'desktop' => array(
'background-color' => isset( $astra_options['above-header-bg-obj']['background-color'] ) ? $astra_options['above-header-bg-obj']['background-color'] : '',
'background-image' => isset( $astra_options['above-header-bg-obj']['background-image'] ) ? $astra_options['above-header-bg-obj']['background-image'] : '',
'background-repeat' => isset( $astra_options['above-header-bg-obj']['background-repeat'] ) ? $astra_options['above-header-bg-obj']['background-repeat'] : 'no-repeat',
'background-position' => isset( $astra_options['above-header-bg-obj']['background-position'] ) ? $astra_options['above-header-bg-obj']['background-position'] : 'center center',
'background-size' => isset( $astra_options['above-header-bg-obj']['background-size'] ) ? $astra_options['above-header-bg-obj']['background-size'] : 'cover',
'background-attachment' => isset( $astra_options['above-header-bg-obj']['background-attachment'] ) ? $astra_options['above-header-bg-obj']['background-attachment'] : 'scroll',
),
'tablet' => array(
'background-color' => isset( $astra_options['mobile-above-header-bg-obj']['background-color'] ) ? $astra_options['mobile-above-header-bg-obj']['background-color'] : '',
'background-image' => isset( $astra_options['mobile-above-header-bg-obj']['background-image'] ) ? $astra_options['mobile-above-header-bg-obj']['background-image'] : '',
'background-repeat' => isset( $astra_options['mobile-above-header-bg-obj']['background-repeat'] ) ? $astra_options['mobile-above-header-bg-obj']['background-repeat'] : 'no-repeat',
'background-position' => isset( $astra_options['mobile-above-header-bg-obj']['background-position'] ) ? $astra_options['mobile-above-header-bg-obj']['background-position'] : 'center center',
'background-size' => isset( $astra_options['mobile-above-header-bg-obj']['background-size'] ) ? $astra_options['mobile-above-header-bg-obj']['background-size'] : 'cover',
'background-attachment' => isset( $astra_options['mobile-above-header-bg-obj']['background-attachment'] ) ? $astra_options['mobile-above-header-bg-obj']['background-attachment'] : 'scroll',
),
'mobile' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'no-repeat',
'background-position' => 'center center',
'background-size' => 'cover',
'background-attachment' => 'scroll',
),
),
'below-header-bg-obj-responsive' => array(
'desktop' => array(
'background-color' => isset( $astra_options['below-header-bg-obj']['background-color'] ) ? $astra_options['below-header-bg-obj']['background-color'] : '#414042',
'background-image' => isset( $astra_options['below-header-bg-obj']['background-image'] ) ? $astra_options['below-header-bg-obj']['background-image'] : '',
'background-repeat' => isset( $astra_options['below-header-bg-obj']['background-repeat'] ) ? $astra_options['below-header-bg-obj']['background-repeat'] : 'no-repeat',
'background-position' => isset( $astra_options['below-header-bg-obj']['background-position'] ) ? $astra_options['below-header-bg-obj']['background-position'] : 'center center',
'background-size' => isset( $astra_options['below-header-bg-obj']['background-size'] ) ? $astra_options['below-header-bg-obj']['background-size'] : 'cover',
'background-attachment' => isset( $astra_options['below-header-bg-obj']['background-attachment'] ) ? $astra_options['below-header-bg-obj']['background-attachment'] : 'scroll',
),
'tablet' => array(
'background-color' => isset( $astra_options['mobile-below-header-bg-obj']['background-color'] ) ? $astra_options['mobile-below-header-bg-obj']['background-color'] : '',
'background-image' => isset( $astra_options['mobile-below-header-bg-obj']['background-image'] ) ? $astra_options['mobile-below-header-bg-obj']['background-image'] : '',
'background-repeat' => isset( $astra_options['mobile-below-header-bg-obj']['background-repeat'] ) ? $astra_options['mobile-below-header-bg-obj']['background-repeat'] : 'no-repeat',
'background-position' => isset( $astra_options['mobile-below-header-bg-obj']['background-position'] ) ? $astra_options['mobile-below-header-bg-obj']['background-position'] : 'center center',
'background-size' => isset( $astra_options['mobile-below-header-bg-obj']['background-size'] ) ? $astra_options['mobile-below-header-bg-obj']['background-size'] : 'cover',
'background-attachment' => isset( $astra_options['mobile-below-header-bg-obj']['background-attachment'] ) ? $astra_options['mobile-below-header-bg-obj']['background-attachment'] : 'scroll',
),
'mobile' => array(
'background-color' => '',
'background-image' => '',
'background-repeat' => 'no-repeat',
'background-position' => 'center center',
'background-size' => 'cover',
'background-attachment' => 'scroll',
),
),
'primary-menu-bg-color-responsive' => array(
'desktop' => isset( $astra_options['primary-menu-bg-color'] ) ? $astra_options['primary-menu-bg-color'] : '',
'tablet' => isset( $astra_options['mobile-header-menu-bg-color'] ) ? $astra_options['mobile-header-menu-bg-color'] : '',
'mobile' => '',
),
'primary-menu-color-responsive' => array(
'desktop' => isset( $astra_options['primary-menu-color'] ) ? $astra_options['primary-menu-color'] : '',
'tablet' => isset( $astra_options['mobile-header-menu-color'] ) ? $astra_options['mobile-header-menu-color'] : '',
'mobile' => '',
),
'primary-menu-h-bg-color-responsive' => array(
'desktop' => isset( $astra_options['primary-menu-h-bg-color'] ) ? $astra_options['primary-menu-h-bg-color'] : '',
'tablet' => isset( $astra_options['mobile-header-menu-h-bg-color'] ) ? $astra_options['mobile-header-menu-h-bg-color'] : '',
'mobile' => '',
),
'primary-menu-h-color-responsive' => array(
'desktop' => isset( $astra_options['primary-menu-h-color'] ) ? $astra_options['primary-menu-h-color'] : '',
'tablet' => isset( $astra_options['mobile-header-menu-h-color'] ) ? $astra_options['mobile-header-menu-h-color'] : '',
'mobile' => '',
),
'primary-menu-a-bg-color-responsive' => array(
'desktop' => isset( $astra_options['primary-menu-a-bg-color'] ) ? $astra_options['primary-menu-a-bg-color'] : '',
'tablet' => isset( $astra_options['mobile-header-menu-a-bg-color'] ) ? $astra_options['mobile-header-menu-a-bg-color'] : '',
'mobile' => '',
),
'primary-menu-a-color-responsive' => array(
'desktop' => isset( $astra_options['primary-menu-a-color'] ) ? $astra_options['primary-menu-a-color'] : '',
'tablet' => isset( $astra_options['mobile-header-menu-a-color'] ) ? $astra_options['mobile-header-menu-a-color'] : '',
'mobile' => '',
),
'primary-submenu-bg-color-responsive' => array(
'desktop' => isset( $astra_options['primary-submenu-bg-color'] ) ? $astra_options['primary-submenu-bg-color'] : '',
'tablet' => isset( $astra_options['mobile-header-submenu-bg-color'] ) ? $astra_options['mobile-header-submenu-bg-color'] : '',
'mobile' => '',
),
'primary-submenu-color-responsive' => array(
'desktop' => isset( $astra_options['primary-submenu-color'] ) ? $astra_options['primary-submenu-color'] : '',
'tablet' => isset( $astra_options['mobile-header-submenu-color'] ) ? $astra_options['mobile-header-submenu-color'] : '',
'mobile' => '',
),
'primary-submenu-h-bg-color-responsive' => array(
'desktop' => isset( $astra_options['primary-submenu-h-bg-color'] ) ? $astra_options['primary-submenu-h-bg-color'] : '',
'tablet' => isset( $astra_options['mobile-header-submenu-h-bg-color'] ) ? $astra_options['mobile-header-submenu-h-bg-color'] : '',
'mobile' => '',
),
'primary-submenu-h-color-responsive' => array(
'desktop' => isset( $astra_options['primary-submenu-h-color'] ) ? $astra_options['primary-submenu-h-color'] : '',
'tablet' => isset( $astra_options['mobile-header-submenu-h-color'] ) ? $astra_options['mobile-header-submenu-h-color'] : '',
'mobile' => '',
),
'primary-submenu-a-bg-color-responsive' => array(
'desktop' => isset( $astra_options['primary-submenu-a-bg-color'] ) ? $astra_options['primary-submenu-a-bg-color'] : '',
'tablet' => isset( $astra_options['mobile-header-submenu-a-bg-color'] ) ? $astra_options['mobile-header-submenu-a-bg-color'] : '',
'mobile' => '',
),
'primary-submenu-a-color-responsive' => array(
'desktop' => isset( $astra_options['primary-submenu-a-color'] ) ? $astra_options['primary-submenu-a-color'] : '',
'tablet' => isset( $astra_options['mobile-header-submenu-a-color'] ) ? $astra_options['mobile-header-submenu-a-color'] : '',
'mobile' => '',
),
'above-header-text-color-responsive' => array(
'desktop' => isset( $astra_options['above-header-text-color'] ) ? $astra_options['above-header-text-color'] : '',
'tablet' => isset( $astra_options['mobile-above-header-t-l-color'] ) ? $astra_options['mobile-above-header-t-l-color'] : '',
'mobile' => '',
),
'above-header-link-color-responsive' => array(
'desktop' => isset( $astra_options['above-header-link-color'] ) ? $astra_options['above-header-link-color'] : '',
'tablet' => isset( $astra_options['mobile-above-header-t-l-color'] ) ? $astra_options['mobile-above-header-t-l-color'] : '',
'mobile' => '',
),
'above-header-link-h-color-responsive' => array(
'desktop' => isset( $astra_options['above-header-link-h-color'] ) ? $astra_options['above-header-link-h-color'] : '',
'tablet' => isset( $astra_options['mobile-above-header-t-l-hover-color'] ) ? $astra_options['mobile-above-header-t-l-hover-color'] : '',
'mobile' => '',
),
'above-header-menu-bg-color' => array(
'desktop' => '',
'tablet' => isset( $astra_options['mobile-above-header-menu-bg-color'] ) ? $astra_options['mobile-above-header-menu-bg-color'] : '',
'mobile' => '',
),
'above-header-menu-color-responsive' => array(
'desktop' => isset( $astra_options['above-header-menu-color'] ) ? $astra_options['above-header-menu-color'] : '',
'tablet' => isset( $astra_options['mobile-above-header-menu-color'] ) ? $astra_options['mobile-above-header-menu-color'] : '',
'mobile' => '',
),
'above-header-menu-h-color-responsive' => array(
'desktop' => isset( $astra_options['above-header-menu-h-color'] ) ? $astra_options['above-header-menu-h-color'] : '',
'tablet' => isset( $astra_options['mobile-above-header-menu-h-color'] ) ? $astra_options['mobile-above-header-menu-h-color'] : '',
'mobile' => '',
),
'above-header-menu-h-bg-color-responsive' => array(
'desktop' => isset( $astra_options['above-header-menu-h-bg-color'] ) ? $astra_options['above-header-menu-h-bg-color'] : '',
'tablet' => isset( $astra_options['mobile-above-header-menu-h-bg-color'] ) ? $astra_options['mobile-above-header-menu-h-bg-color'] : '',
'mobile' => '',
),
'above-header-menu-active-color-responsive' => array(
'desktop' => isset( $astra_options['above-header-menu-active-color'] ) ? $astra_options['above-header-menu-active-color'] : '',
'tablet' => isset( $astra_options['mobile-above-header-menu-a-color'] ) ? $astra_options['mobile-above-header-menu-a-color'] : '',
'mobile' => '',
),
'above-header-menu-active-bg-color-responsive' => array(
'desktop' => isset( $astra_options['above-header-menu-active-bg-color'] ) ? $astra_options['above-header-menu-active-bg-color'] : '',
'tablet' => isset( $astra_options['mobile-above-header-menu-a-bg-color'] ) ? $astra_options['mobile-above-header-menu-a-bg-color'] : '',
'mobile' => '',
),
'above-header-submenu-text-color-responsive' => array(
'desktop' => isset( $astra_options['above-header-submenu-text-color'] ) ? $astra_options['above-header-submenu-text-color'] : '',
'tablet' => isset( $astra_options['mobile-above-header-submenu-color'] ) ? $astra_options['mobile-above-header-submenu-color'] : '',
'mobile' => '',
),
'above-header-submenu-bg-color-responsive' => array(
'desktop' => isset( $astra_options['above-header-submenu-bg-color'] ) ? $astra_options['above-header-submenu-bg-color'] : '',
'tablet' => isset( $astra_options['mobile-above-header-submenu-bg-color'] ) ? $astra_options['mobile-above-header-submenu-bg-color'] : '',
'mobile' => '',
),
'above-header-submenu-hover-color-responsive' => array(
'desktop' => isset( $astra_options['above-header-submenu-hover-color'] ) ? $astra_options['above-header-submenu-hover-color'] : '',
'tablet' => isset( $astra_options['mobile-above-header-submenu-h-color'] ) ? $astra_options['mobile-above-header-submenu-h-color'] : '',
'mobile' => '',
),
'above-header-submenu-bg-hover-color-responsive' => array(
'desktop' => isset( $astra_options['above-header-submenu-bg-hover-color'] ) ? $astra_options['above-header-submenu-bg-hover-color'] : '',
'tablet' => isset( $astra_options['mobile-above-header-submenu-h-bg-color'] ) ? $astra_options['mobile-above-header-submenu-h-bg-color'] : '',
'mobile' => '',
),
'above-header-submenu-active-color-responsive' => array(
'desktop' => isset( $astra_options['above-header-submenu-active-color'] ) ? $astra_options['above-header-submenu-active-color'] : '',
'tablet' => isset( $astra_options['mobile-above-header-submenu-a-color'] ) ? $astra_options['mobile-above-header-submenu-a-color'] : '',
'mobile' => '',
),
'above-header-submenu-active-bg-color-responsive' => array(
'desktop' => isset( $astra_options['above-header-submenu-active-bg-color'] ) ? $astra_options['above-header-submenu-active-bg-color'] : '',
'tablet' => isset( $astra_options['mobile-above-header-submenu-a-bg-color'] ) ? $astra_options['mobile-above-header-submenu-a-bg-color'] : '',
'mobile' => '',
),
'below-header-text-color-responsive' => array(
'desktop' => isset( $astra_options['below-header-text-color'] ) ? $astra_options['below-header-text-color'] : '#ffffff',
'tablet' => isset( $astra_options['mobile-below-header-t-l-color'] ) ? $astra_options['mobile-below-header-t-l-color'] : '',
'mobile' => '',
),
'below-header-link-hover-color-responsive' => array(
'desktop' => isset( $astra_options['below-header-link-hover-color'] ) ? $astra_options['below-header-link-hover-color'] : '#ffffff',
'tablet' => isset( $astra_options['mobile-below-header-t-l-hover-color'] ) ? $astra_options['mobile-below-header-t-l-hover-color'] : '',
'mobile' => '',
),
'below-header-link-color-responsive' => array(
'desktop' => isset( $astra_options['below-header-link-color'] ) ? $astra_options['below-header-link-color'] : '#ffffff',
'tablet' => isset( $astra_options['mobile-below-header-t-l-color'] ) ? $astra_options['mobile-below-header-t-l-color'] : '',
'mobile' => '',
),
'below-header-menu-text-color-responsive' => array(
'desktop' => isset( $astra_options['below-header-menu-text-color'] ) ? $astra_options['below-header-menu-text-color'] : '#ffffff',
'tablet' => isset( $astra_options['mobile-below-header-menu-color'] ) ? $astra_options['mobile-below-header-menu-color'] : '',
'mobile' => '',
),
'below-header-menu-text-hover-color-responsive' => array(
'desktop' => isset( $astra_options['below-header-menu-text-hover-color'] ) ? $astra_options['below-header-menu-text-hover-color'] : '#ffffff',
'tablet' => isset( $astra_options['mobile-below-header-menu-h-color'] ) ? $astra_options['mobile-below-header-menu-h-color'] : '',
'mobile' => '',
),
'below-header-menu-bg-hover-color-responsive' => array(
'desktop' => isset( $astra_options['below-header-menu-bg-hover-color'] ) ? $astra_options['below-header-menu-bg-hover-color'] : '#575757',
'tablet' => isset( $astra_options['mobile-below-header-menu-h-bg-color'] ) ? $astra_options['mobile-below-header-menu-h-bg-color'] : '',
'mobile' => '',
),
'below-header-current-menu-text-color-responsive' => array(
'desktop' => isset( $astra_options['below-header-current-menu-text-color'] ) ? $astra_options['below-header-current-menu-text-color'] : '#ffffff',
'tablet' => isset( $astra_options['mobile-below-header-menu-a-color'] ) ? $astra_options['mobile-below-header-menu-a-color'] : '',
'mobile' => '',
),
'below-header-current-menu-bg-color-responsive' => array(
'desktop' => isset( $astra_options['below-header-current-menu-bg-color'] ) ? $astra_options['below-header-current-menu-bg-color'] : '#575757',
'tablet' => isset( $astra_options['mobile-below-header-menu-a-bg-color'] ) ? $astra_options['mobile-below-header-menu-a-bg-color'] : '',
'mobile' => '',
),
'below-header-submenu-text-color-responsive' => array(
'desktop' => isset( $astra_options['below-header-submenu-text-color'] ) ? $astra_options['below-header-submenu-text-color'] : '',
'tablet' => isset( $astra_options['mobile-below-header-submenu-color'] ) ? $astra_options['mobile-below-header-submenu-color'] : '',
'mobile' => '',
),
'below-header-submenu-bg-color-responsive' => array(
'desktop' => isset( $astra_options['below-header-submenu-bg-color'] ) ? $astra_options['below-header-submenu-bg-color'] : '',
'tablet' => isset( $astra_options['mobile-below-header-submenu-bg-color'] ) ? $astra_options['mobile-below-header-submenu-bg-color'] : '',
'mobile' => '',
),
'below-header-submenu-hover-color-responsive' => array(
'desktop' => isset( $astra_options['below-header-submenu-hover-color'] ) ? $astra_options['below-header-submenu-hover-color'] : '',
'tablet' => isset( $astra_options['mobile-below-header-submenu-h-color'] ) ? $astra_options['mobile-below-header-submenu-h-color'] : '',
'mobile' => '',
),
'below-header-submenu-bg-hover-color-responsive' => array(
'desktop' => isset( $astra_options['below-header-submenu-bg-hover-color'] ) ? $astra_options['below-header-submenu-bg-hover-color'] : '',
'tablet' => isset( $astra_options['mobile-below-header-submenu-h-bg-color'] ) ? $astra_options['mobile-below-header-submenu-h-bg-color'] : '',
'mobile' => '',
),
'below-header-submenu-active-color-responsive' => array(
'desktop' => isset( $astra_options['below-header-submenu-active-color'] ) ? $astra_options['below-header-submenu-active-color'] : '',
'tablet' => isset( $astra_options['mobile-below-header-submenu-a-color'] ) ? $astra_options['mobile-below-header-submenu-a-color'] : '',
'mobile' => '',
),
'below-header-submenu-active-bg-color-responsive' => array(
'desktop' => isset( $astra_options['below-header-submenu-active-bg-color'] ) ? $astra_options['below-header-submenu-active-bg-color'] : '',
'tablet' => isset( $astra_options['mobile-below-header-submenu-a-bg-color'] ) ? $astra_options['mobile-below-header-submenu-a-bg-color'] : '',
'mobile' => '',
),
);
// Merge customizer options with old options.
$astra_options = wp_parse_args( $headers_colors_options, $astra_options );
// Unset all color options which is no longer used.
$mobile_color_options = array(
'mobile-header-bg-obj',
'mobile-above-header-bg-obj',
'mobile-below-header-bg-obj',
'mobile-header-menu-bg-color',
'mobile-header-menu-color',
'mobile-header-menu-h-bg-color',
'mobile-header-menu-h-color',
'mobile-header-menu-a-bg-color',
'mobile-header-menu-a-color',
'mobile-header-submenu-bg-color',
'mobile-header-submenu-color',
'mobile-header-submenu-h-bg-color',
'mobile-header-submenu-h-color',
'mobile-header-submenu-a-bg-color',
'mobile-header-submenu-a-color',
'mobile-above-header-t-l-color',
'mobile-above-header-t-l-color',
'mobile-above-header-t-l-hover-color',
'mobile-above-header-menu-bg-color',
'mobile-above-header-menu-color',
'mobile-above-header-menu-h-color',
'mobile-above-header-menu-h-bg-color',
'mobile-above-header-menu-a-color',
'mobile-above-header-menu-a-bg-color',
'mobile-above-header-submenu-color',
'mobile-above-header-submenu-bg-color',
'mobile-above-header-submenu-h-color',
'mobile-above-header-submenu-h-bg-color',
'mobile-above-header-submenu-a-color',
'mobile-above-header-submenu-a-bg-color',
'mobile-below-header-t-l-color',
'mobile-below-header-t-l-hover-color',
'mobile-below-header-t-l-color',
'mobile-below-header-menu-bg-color',
'mobile-below-header-menu-color',
'mobile-below-header-menu-h-color',
'mobile-below-header-menu-h-bg-color',
'mobile-below-header-menu-a-color',
'mobile-below-header-menu-a-bg-color',
'mobile-below-header-submenu-color',
'mobile-below-header-submenu-bg-color',
'mobile-below-header-submenu-h-color',
'mobile-below-header-submenu-h-bg-color',
'mobile-below-header-submenu-a-color',
'mobile-below-header-submenu-a-bg-color',
);
foreach ( $mobile_color_options as $key => $value ) {
if ( array_key_exists( $value, $astra_options ) ) {
unset( $astra_options[ $value ] );
}
}
$sticky_logo = ( isset( $astra_options['sticky-header-logo'] ) && '' !== $astra_options['sticky-header-logo'] ) ? $astra_options['sticky-header-logo'] : false;
$sticky_rt_logo = ( isset( $astra_options['sticky-header-retina-logo'] ) && '' !== $astra_options['sticky-header-retina-logo'] ) ? $astra_options['sticky-header-retina-logo'] : false;
$transparent_logo = ( isset( $astra_options['transparent-header-logo'] ) && '' !== $astra_options['transparent-header-logo'] ) ? $astra_options['transparent-header-logo'] : false;
$transparent_rt_logo = ( isset( $astra_options['transparent-header-retina-logo'] ) && '' !== $astra_options['transparent-header-retina-logo'] ) ? $astra_options['transparent-header-retina-logo'] : false;
if ( '' != $sticky_logo || '' != $sticky_rt_logo ) {
$astra_options['different-sticky-logo'] = '1';
}
if ( '' != $transparent_rt_logo || '' != $transparent_logo ) {
$astra_options['different-transparent-logo'] = '1';
}
update_option( 'astra-settings', $astra_options );
}
/**
* Update options of older version than 1.4.0-beta.5
*
* Mobile header alignment options
* Primary Menu, Above Header Menu and Below Header menu background color moved into
* responsive background image option
*
* @since 1.4.0-beta.5
*/
public static function v_1_4_0_beta_5() {
$astra_options = get_option( 'astra-settings', array() );
if ( ! isset( $astra_options['above-header-menu-align'] ) ) {
$astra_options['above-header-menu-align'] = 'inline';
}
if ( ! isset( $astra_options['below-header-menu-align'] ) ) {
$astra_options['below-header-menu-align'] = 'inline';
}
// Primary menu background color.
if ( isset( $astra_options['primary-menu-bg-color-responsive']['desktop'] ) ) {
$astra_options['primary-menu-bg-obj-responsive']['desktop'] = array(
'background-color' => $astra_options['primary-menu-bg-color-responsive']['desktop'],
'background-image' => '',
'background-repeat' => 'no-repeat',
'background-position' => 'center center',
'background-size' => 'cover',
'background-attachment' => 'scroll',
);
}
if ( isset( $astra_options['primary-menu-bg-color-responsive']['tablet'] ) ) {
$astra_options['primary-menu-bg-obj-responsive']['tablet'] = array(
'background-color' => $astra_options['primary-menu-bg-color-responsive']['tablet'],
'background-image' => '',
'background-repeat' => 'no-repeat',
'background-position' => 'center center',
'background-size' => 'cover',
'background-attachment' => 'scroll',
);
}
if ( isset( $astra_options['primary-menu-bg-color-responsive']['mobile'] ) ) {
$astra_options['primary-menu-bg-obj-responsive']['mobile'] = array(
'background-color' => $astra_options['primary-menu-bg-color-responsive']['mobile'],
'background-image' => '',
'background-repeat' => 'no-repeat',
'background-position' => 'center center',
'background-size' => 'cover',
'background-attachment' => 'scroll',
);
}
// Above header menu background color.
if ( isset( $astra_options['above-header-menu-bg-color']['desktop'] ) ) {
$astra_options['above-header-menu-bg-obj-responsive']['desktop'] = array(
'background-color' => $astra_options['above-header-menu-bg-color']['desktop'],
'background-image' => '',
'background-repeat' => 'no-repeat',
'background-position' => 'center center',
'background-size' => 'cover',
'background-attachment' => 'scroll',
);
}
if ( isset( $astra_options['above-header-menu-bg-color']['tablet'] ) ) {
$astra_options['above-header-menu-bg-obj-responsive']['tablet'] = array(
'background-color' => $astra_options['above-header-menu-bg-color']['tablet'],
'background-image' => '',
'background-repeat' => 'no-repeat',
'background-position' => 'center center',
'background-size' => 'cover',
'background-attachment' => 'scroll',
);
}
if ( isset( $astra_options['above-header-menu-bg-color']['mobile'] ) ) {
$astra_options['above-header-menu-bg-obj-responsive']['mobile'] = array(
'background-color' => $astra_options['above-header-menu-bg-color']['mobile'],
'background-image' => '',
'background-repeat' => 'no-repeat',
'background-position' => 'center center',
'background-size' => 'cover',
'background-attachment' => 'scroll',
);
}
// Below header menu background color.
if ( isset( $astra_options['below-header-menu-bg-color']['desktop'] ) ) {
$astra_options['below-header-menu-bg-obj-responsive']['desktop'] = array(
'background-color' => $astra_options['below-header-menu-bg-color']['desktop'],
'background-image' => '',
'background-repeat' => 'no-repeat',
'background-position' => 'center center',
'background-size' => 'cover',
'background-attachment' => 'scroll',
);
}
if ( isset( $astra_options['below-header-menu-bg-color']['tablet'] ) ) {
$astra_options['below-header-menu-bg-obj-responsive']['tablet'] = array(
'background-color' => $astra_options['below-header-menu-bg-color']['tablet'],
'background-image' => '',
'background-repeat' => 'no-repeat',
'background-position' => 'center center',
'background-size' => 'cover',
'background-attachment' => 'scroll',
);
}
if ( isset( $astra_options['below-header-menu-bg-color']['mobile'] ) ) {
$astra_options['below-header-menu-bg-obj-responsive']['mobile'] = array(
'background-color' => $astra_options['below-header-menu-bg-color']['mobile'],
'background-image' => '',
'background-repeat' => 'no-repeat',
'background-position' => 'center center',
'background-size' => 'cover',
'background-attachment' => 'scroll',
);
}
// Set Above Header menu style fill for older version users.
if ( ! isset( $astra_options['mobile-above-header-toggle-btn-style'] ) ) {
$astra_options['mobile-above-header-toggle-btn-style'] = 'fill';
}
// Set Below Header menu style fill for older version users.
if ( ! isset( $astra_options['mobile-below-header-toggle-btn-style'] ) ) {
$astra_options['mobile-below-header-toggle-btn-style'] = 'fill';
}
update_option( 'astra-settings', $astra_options );
self::update_header_layout_opts();
}
/**
* Update options of older version than 1.4.1
*
* Sticky Header options
* Primary Menu, Above Header Menu and Below Header menu colors moved into
* Sticky Header colors
*
* Transparent Header colors options migrate to respective responsive keys
*
* 1) Set the new option `different-sticky-retina-logo` to true for users who are already using a sticky header retina logo.
* 2) Set the new option `different-transparent-retina-logo` to true for users who are already using a transparent header retina logo.
* 3) Set the new option `different-retina-logo` to true for users who are already using a advanced header retina logo.
*
* @since 1.4.1
*/
public static function v_1_4_1() {
$astra_options = get_option( 'astra-settings', array() );
$sticky_header_opacity = isset( $astra_options['sticky-header-bg-opc'] ) ? $astra_options['sticky-header-bg-opc'] : 1;
$updated_options = array(
'sticky-header-color-site-title-responsive' => array(
'desktop' => ( isset( $astra_options['header-color-site-title'] ) ) ? $astra_options['header-color-site-title'] : '',
'tablet' => '',
'mobile' => '',
),
'sticky-header-color-site-tagline-responsive' => array(
'desktop' => ( isset( $astra_options['header-color-h-site-title'] ) ) ? $astra_options['header-color-h-site-title'] : '',
'tablet' => '',
'mobile' => '',
),
'sticky-header-color-h-site-title-responsive' => array(
'desktop' => ( isset( $astra_options['header-color-site-tagline'] ) ) ? $astra_options['header-color-site-tagline'] : '',
'tablet' => '',
'mobile' => '',
),
'sticky-header-bg-color-responsive' => array(
'desktop' => ( ! empty( $astra_options['header-bg-obj-responsive']['desktop']['background'] ) ) ? astra_hex_to_rgba( astra_addon_rgba2hex( $astra_options['header-bg-obj-responsive']['desktop']['background'] ), $sticky_header_opacity ) : astra_hex_to_rgba( '#ffffff', $sticky_header_opacity ),
'tablet' => ( ! empty( $astra_options['header-bg-obj-responsive']['tablet']['background'] ) ) ? astra_hex_to_rgba( astra_addon_rgba2hex( $astra_options['header-bg-obj-responsive']['tablet']['background'] ), $sticky_header_opacity ) : '',
'mobile' => ( ! empty( $astra_options['header-bg-obj-responsive']['mobile']['background'] ) ) ? astra_hex_to_rgba( astra_addon_rgba2hex( $astra_options['header-bg-obj-responsive']['mobile']['background'] ), $sticky_header_opacity ) : '',
),
'sticky-header-menu-bg-color-responsive' => array(
'desktop' => ( ! empty( $astra_options['primary-menu-bg-obj-responsive']['desktop']['background-color'] ) ) ? astra_hex_to_rgba( astra_addon_rgba2hex( $astra_options['primary-menu-bg-obj-responsive']['desktop']['background-color'] ), $sticky_header_opacity ) : '',
'tablet' => ( ! empty( $astra_options['primary-menu-bg-obj-responsive']['tablet']['background-color'] ) ) ? astra_hex_to_rgba( astra_addon_rgba2hex( $astra_options['primary-menu-bg-obj-responsive']['tablet']['background-color'] ), $sticky_header_opacity ) : '',
'mobile' => ( ! empty( $astra_options['primary-menu-bg-obj-responsive']['mobile']['background-color'] ) ) ? astra_hex_to_rgba( astra_addon_rgba2hex( $astra_options['primary-menu-bg-obj-responsive']['mobile']['background-color'] ), $sticky_header_opacity ) : '',
),
'sticky-header-menu-color-responsive' => array(
'desktop' => ( isset( $astra_options['primary-menu-color-responsive']['desktop'] ) ) ? $astra_options['primary-menu-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['primary-menu-color-responsive']['tablet'] ) ) ? $astra_options['primary-menu-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['primary-menu-color-responsive']['mobile'] ) ) ? $astra_options['primary-menu-color-responsive']['mobile'] : '',
),
'sticky-header-menu-h-color-responsive' => array(
'desktop' => ( isset( $astra_options['primary-menu-h-color-responsive']['desktop'] ) ) ? $astra_options['primary-menu-h-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['primary-menu-h-color-responsive']['tablet'] ) ) ? $astra_options['primary-menu-h-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['primary-menu-h-color-responsive']['mobile'] ) ) ? $astra_options['primary-menu-h-color-responsive']['mobile'] : '',
),
'sticky-header-menu-h-a-bg-color-responsive' => array(
'desktop' => ( isset( $astra_options['primary-menu-h-bg-color-responsive']['desktop'] ) ) ? $astra_options['primary-menu-h-bg-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['primary-menu-h-bg-color-responsive']['tablet'] ) ) ? $astra_options['primary-menu-h-bg-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['primary-menu-h-bg-color-responsive']['mobile'] ) ) ? $astra_options['primary-menu-h-bg-color-responsive']['mobile'] : '',
),
'sticky-header-submenu-bg-color-responsive' => array(
'desktop' => ( isset( $astra_options['primary-submenu-bg-color-responsive']['desktop'] ) ) ? $astra_options['primary-submenu-bg-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['primary-submenu-bg-color-responsive']['tablet'] ) ) ? $astra_options['primary-submenu-bg-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['primary-submenu-bg-color-responsive']['mobile'] ) ) ? $astra_options['primary-submenu-bg-color-responsive']['mobile'] : '',
),
'sticky-header-submenu-color-responsive' => array(
'desktop' => ( isset( $astra_options['primary-submenu-color-responsive']['desktop'] ) ) ? $astra_options['primary-submenu-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['primary-submenu-color-responsive']['tablet'] ) ) ? $astra_options['primary-submenu-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['primary-submenu-color-responsive']['mobile'] ) ) ? $astra_options['primary-submenu-color-responsive']['mobile'] : '',
),
'sticky-header-submenu-h-color-responsive' => array(
'desktop' => ( isset( $astra_options['primary-submenu-h-color-responsive']['desktop'] ) ) ? $astra_options['primary-submenu-h-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['primary-submenu-h-color-responsive']['tablet'] ) ) ? $astra_options['primary-submenu-h-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['primary-submenu-h-color-responsive']['mobile'] ) ) ? $astra_options['primary-submenu-h-color-responsive']['mobile'] : '',
),
'sticky-header-submenu-h-a-bg-color-responsive' => array(
'desktop' => ( isset( $astra_options['primary-submenu-h-bg-color-responsive']['desktop'] ) ) ? $astra_options['primary-submenu-h-bg-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['primary-submenu-h-bg-color-responsive']['tablet'] ) ) ? $astra_options['primary-submenu-h-bg-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['primary-submenu-h-bg-color-responsive']['mobile'] ) ) ? $astra_options['primary-submenu-h-bg-color-responsive']['mobile'] : '',
),
// Below header.
'sticky-below-header-bg-color-responsive' => array(
'desktop' => ( ! empty( $astra_options['below-header-bg-obj-responsive']['desktop']['background'] ) ) ? astra_hex_to_rgba( astra_addon_rgba2hex( $astra_options['below-header-bg-obj-responsive']['desktop']['background'] ), $sticky_header_opacity ) : astra_hex_to_rgba( '#414042', $sticky_header_opacity ),
'tablet' => ( ! empty( $astra_options['below-header-bg-obj-responsive']['tablet']['background'] ) ) ? astra_hex_to_rgba( astra_addon_rgba2hex( $astra_options['below-header-bg-obj-responsive']['tablet']['background'] ), $sticky_header_opacity ) : '',
'mobile' => ( ! empty( $astra_options['below-header-bg-obj-responsive']['mobile']['background'] ) ) ? astra_hex_to_rgba( astra_addon_rgba2hex( $astra_options['below-header-bg-obj-responsive']['mobile']['background'] ), $sticky_header_opacity ) : '',
),
'sticky-below-header-menu-bg-color-responsive' => array(
'desktop' => ( ! empty( $astra_options['below-header-menu-bg-obj-responsive']['desktop']['background-color'] ) ) ? astra_hex_to_rgba( astra_addon_rgba2hex( $astra_options['below-header-menu-bg-obj-responsive']['desktop']['background-color'] ), $sticky_header_opacity ) : '',
'tablet' => ( ! empty( $astra_options['below-header-menu-bg-obj-responsive']['tablet']['background-color'] ) ) ? astra_hex_to_rgba( astra_addon_rgba2hex( $astra_options['below-header-menu-bg-obj-responsive']['tablet']['background-color'] ), $sticky_header_opacity ) : '',
'mobile' => ( ! empty( $astra_options['below-header-menu-bg-obj-responsive']['mobile']['background-color'] ) ) ? astra_hex_to_rgba( astra_addon_rgba2hex( $astra_options['below-header-menu-bg-obj-responsive']['mobile']['background-color'] ), $sticky_header_opacity ) : '',
),
'sticky-below-header-menu-color-responsive' => array(
'desktop' => ( isset( $astra_options['below-header-menu-text-color-responsive']['desktop'] ) ) ? $astra_options['below-header-menu-text-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['below-header-menu-text-color-responsive']['tablet'] ) ) ? $astra_options['below-header-menu-text-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['below-header-menu-text-color-responsive']['mobile'] ) ) ? $astra_options['below-header-menu-text-color-responsive']['mobile'] : '',
),
'sticky-below-header-menu-h-color-responsive' => array(
'desktop' => ( isset( $astra_options['below-header-menu-text-hover-color-responsive']['desktop'] ) ) ? $astra_options['below-header-menu-text-hover-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['below-header-menu-text-hover-color-responsive']['tablet'] ) ) ? $astra_options['below-header-menu-text-hover-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['below-header-menu-text-hover-color-responsive']['mobile'] ) ) ? $astra_options['below-header-menu-text-hover-color-responsive']['mobile'] : '',
),
'sticky-below-header-menu-h-a-bg-color-responsive' => array(
'desktop' => ( isset( $astra_options['below-header-menu-bg-hover-color-responsive']['desktop'] ) ) ? $astra_options['below-header-menu-bg-hover-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['below-header-menu-bg-hover-color-responsive']['tablet'] ) ) ? $astra_options['below-header-menu-bg-hover-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['below-header-menu-bg-hover-color-responsive']['mobile'] ) ) ? $astra_options['below-header-menu-bg-hover-color-responsive']['mobile'] : '',
),
'sticky-below-header-submenu-bg-color-responsive' => array(
'desktop' => ( isset( $astra_options['below-header-submenu-bg-color-responsive']['desktop'] ) ) ? $astra_options['below-header-submenu-bg-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['below-header-submenu-bg-color-responsive']['tablet'] ) ) ? $astra_options['below-header-submenu-bg-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['below-header-submenu-bg-color-responsive']['mobile'] ) ) ? $astra_options['below-header-submenu-bg-color-responsive']['mobile'] : '',
),
'sticky-below-header-submenu-color-responsive' => array(
'desktop' => ( isset( $astra_options['below-header-submenu-text-color-responsive']['desktop'] ) ) ? $astra_options['below-header-submenu-text-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['below-header-submenu-text-color-responsive']['tablet'] ) ) ? $astra_options['below-header-submenu-text-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['below-header-submenu-text-color-responsive']['mobile'] ) ) ? $astra_options['below-header-submenu-text-color-responsive']['mobile'] : '',
),
'sticky-below-header-submenu-h-color-responsive' => array(
'desktop' => ( isset( $astra_options['below-header-submenu-hover-color-responsive']['desktop'] ) ) ? $astra_options['below-header-submenu-hover-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['below-header-submenu-hover-color-responsive']['tablet'] ) ) ? $astra_options['below-header-submenu-hover-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['below-header-submenu-hover-color-responsive']['mobile'] ) ) ? $astra_options['below-header-submenu-hover-color-responsive']['mobile'] : '',
),
'sticky-below-header-submenu-h-a-bg-color-responsive' => array(
'desktop' => ( isset( $astra_options['below-header-submenu-bg-hover-color-responsive']['desktop'] ) ) ? $astra_options['below-header-submenu-bg-hover-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['below-header-submenu-bg-hover-color-responsive']['tablet'] ) ) ? $astra_options['below-header-submenu-bg-hover-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['below-header-submenu-bg-hover-color-responsive']['mobile'] ) ) ? $astra_options['below-header-submenu-bg-hover-color-responsive']['mobile'] : '',
),
// Above header.
'sticky-above-header-bg-color-responsive' => array(
'desktop' => ( ! empty( $astra_options['above-header-bg-obj-responsive']['desktop']['background'] ) ) ? astra_hex_to_rgba( astra_addon_rgba2hex( $astra_options['above-header-bg-obj-responsive']['desktop']['background'] ), $sticky_header_opacity ) : astra_hex_to_rgba( '#ffffff', $sticky_header_opacity ),
'tablet' => ( ! empty( $astra_options['above-header-bg-obj-responsive']['tablet']['background'] ) ) ? astra_hex_to_rgba( astra_addon_rgba2hex( $astra_options['above-header-bg-obj-responsive']['tablet']['background'] ), $sticky_header_opacity ) : '',
'mobile' => ( ! empty( $astra_options['above-header-bg-obj-responsive']['mobile']['background'] ) ) ? astra_hex_to_rgba( astra_addon_rgba2hex( $astra_options['above-header-bg-obj-responsive']['mobile']['background'] ), $sticky_header_opacity ) : '',
),
'sticky-above-header-menu-bg-color-responsive' => array(
'desktop' => ( ! empty( $astra_options['above-header-menu-bg-obj-responsive']['desktop']['background-color'] ) ) ? astra_hex_to_rgba( astra_addon_rgba2hex( $astra_options['above-header-menu-bg-obj-responsive']['desktop']['background-color'] ), $sticky_header_opacity ) : '',
'tablet' => ( ! empty( $astra_options['above-header-menu-bg-obj-responsive']['tablet']['background-color'] ) ) ? astra_hex_to_rgba( astra_addon_rgba2hex( $astra_options['above-header-menu-bg-obj-responsive']['tablet']['background-color'] ), $sticky_header_opacity ) : '',
'mobile' => ( ! empty( $astra_options['above-header-menu-bg-obj-responsive']['mobile']['background-color'] ) ) ? astra_hex_to_rgba( astra_addon_rgba2hex( $astra_options['above-header-menu-bg-obj-responsive']['mobile']['background-color'] ), $sticky_header_opacity ) : '',
),
'sticky-above-header-menu-color-responsive' => array(
'desktop' => ( isset( $astra_options['above-header-menu-color-responsive']['desktop'] ) ) ? $astra_options['above-header-menu-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['above-header-menu-color-responsive']['tablet'] ) ) ? $astra_options['above-header-menu-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['above-header-menu-color-responsive']['mobile'] ) ) ? $astra_options['above-header-menu-color-responsive']['mobile'] : '',
),
'sticky-above-header-menu-h-color-responsive' => array(
'desktop' => ( isset( $astra_options['above-header-menu-h-color-responsive']['desktop'] ) ) ? $astra_options['above-header-menu-h-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['above-header-menu-h-color-responsive']['tablet'] ) ) ? $astra_options['above-header-menu-h-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['above-header-menu-h-color-responsive']['mobile'] ) ) ? $astra_options['above-header-menu-h-color-responsive']['mobile'] : '',
),
'sticky-above-header-menu-h-a-bg-color-responsive' => array(
'desktop' => ( isset( $astra_options['above-header-menu-h-bg-color-responsive']['desktop'] ) ) ? $astra_options['above-header-menu-h-bg-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['above-header-menu-h-bg-color-responsive']['tablet'] ) ) ? $astra_options['above-header-menu-h-bg-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['above-header-menu-h-bg-color-responsive']['mobile'] ) ) ? $astra_options['above-header-menu-h-bg-color-responsive']['mobile'] : '',
),
'sticky-above-header-submenu-bg-color-responsive' => array(
'desktop' => ( isset( $astra_options['above-header-submenu-bg-color-responsive']['desktop'] ) ) ? $astra_options['above-header-submenu-bg-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['above-header-submenu-bg-color-responsive']['tablet'] ) ) ? $astra_options['above-header-submenu-bg-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['above-header-submenu-bg-color-responsive']['mobile'] ) ) ? $astra_options['above-header-submenu-bg-color-responsive']['mobile'] : '',
),
'sticky-above-header-submenu-color-responsive' => array(
'desktop' => ( isset( $astra_options['above-header-submenu-text-color-responsive']['desktop'] ) ) ? $astra_options['above-header-submenu-text-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['above-header-submenu-text-color-responsive']['tablet'] ) ) ? $astra_options['above-header-submenu-text-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['above-header-submenu-text-color-responsive']['mobile'] ) ) ? $astra_options['above-header-submenu-text-color-responsive']['mobile'] : '',
),
'sticky-above-header-submenu-h-color-responsive' => array(
'desktop' => ( isset( $astra_options['above-header-submenu-hover-color-responsive']['desktop'] ) ) ? $astra_options['above-header-submenu-hover-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['above-header-submenu-hover-color-responsive']['tablet'] ) ) ? $astra_options['above-header-submenu-hover-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['above-header-submenu-hover-color-responsive']['mobile'] ) ) ? $astra_options['above-header-submenu-hover-color-responsive']['mobile'] : '',
),
'sticky-above-header-submenu-h-a-bg-color-responsive' => array(
'desktop' => ( isset( $astra_options['above-header-submenu-bg-hover-color-responsive']['desktop'] ) ) ? $astra_options['above-header-submenu-bg-hover-color-responsive']['desktop'] : '',
'tablet' => ( isset( $astra_options['above-header-submenu-bg-hover-color-responsive']['tablet'] ) ) ? $astra_options['above-header-submenu-bg-hover-color-responsive']['tablet'] : '',
'mobile' => ( isset( $astra_options['above-header-submenu-bg-hover-color-responsive']['mobile'] ) ) ? $astra_options['above-header-submenu-bg-hover-color-responsive']['mobile'] : '',
),
// Transparent Header Colors.
'transparent-header-bg-color-responsive' => array(
'desktop' => ( isset( $astra_options['transparent-header-bg-color'] ) ? $astra_options['transparent-header-bg-color'] : '' ),
'tablet' => '',
'mobile' => '',
),
'transparent-header-color-site-title-responsive' => array(
'desktop' => isset( $astra_options['transparent-header-color-site-title'] ) ? $astra_options['transparent-header-color-site-title'] : '',
'tablet' => '',
'mobile' => '',
),
'transparent-header-color-h-site-title-responsive' => array(
'desktop' => isset( $astra_options['transparent-header-color-h-site-title'] ) ? $astra_options['transparent-header-color-h-site-title'] : '',
'tablet' => '',
'mobile' => '',
),
'transparent-menu-bg-color-responsive' => array(
'desktop' => isset( $astra_options['transparent-menu-bg-color'] ) ? $astra_options['transparent-menu-bg-color'] : '',
'tablet' => '',
'mobile' => '',
),
'transparent-menu-color-responsive' => array(
'desktop' => isset( $astra_options['transparent-menu-color'] ) ? $astra_options['transparent-menu-color'] : '',
'tablet' => '',
'mobile' => '',
),
'transparent-menu-h-color-responsive' => array(
'desktop' => isset( $astra_options['transparent-menu-h-color'] ) ? $astra_options['transparent-menu-h-color'] : '',
'tablet' => '',
'mobile' => '',
),
'different-sticky-retina-logo' => ( isset( $astra_options['sticky-header-retina-logo'] ) && '' != $astra_options['sticky-header-retina-logo'] ) ? '1' : false,
'different-transparent-retina-logo' => ( isset( $astra_options['transparent-header-retina-logo'] ) && '' != $astra_options['transparent-header-retina-logo'] ) ? '1' : false,
);
// Merge customizer options with old options.
$astra_options = wp_parse_args( $updated_options, $astra_options );
update_option( 'astra-settings', $astra_options );
// Page Header different retina logo.
$args = array(
'post_type' => 'astra_adv_header',
// Query performance optimization.
'fields' => 'ids',
'no_found_rows' => true,
'post_status' => 'any',
'posts_per_page' => 200, // phpcs:ignore WordPress.WP.PostsPerPage.posts_per_page_posts_per_page
);
$query = new WP_Query( $args );
$post_ids = (array) $query->posts;
foreach ( $post_ids as $key => $post_id ) {
$ast_advanced_headers_design = get_post_meta( $post_id, 'ast-advanced-headers-design', true );
if ( '' !== $ast_advanced_headers_design['retina-logo-url'] ) {
$ast_advanced_headers_layout = get_post_meta( $post_id, 'ast-advanced-headers-layout', true );
$ast_advanced_headers_layout['diff-header-retina-logo'] = 'enabled';
update_post_meta( $post_id, 'ast-advanced-headers-layout', $ast_advanced_headers_layout );
}
}
}
/**
* Update options when updating to v1.4.8
*
* Typography addon don't include typography CSS for annchors inside headings.
*
* @return void
*/
public static function v_1_4_8() {
$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 );
}
}
/**
* Update options when updating to v1.6.0-beta.4
* Header Sections Submenu Border width
* Header Sections Pointer animation default value
*
* @return void
*/
public static function v_1_6_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' );
$above_submenu_border = isset( $theme_options['above-header-submenu-border'] ) ? $theme_options['above-header-submenu-border'] : true;
$below_submenu_border = isset( $theme_options['below-header-submenu-border'] ) ? $theme_options['below-header-submenu-border'] : true;
// Above Header.
if ( $above_submenu_border ) {
$theme_options['above-header-submenu-border'] = $border_enabled_values;
$theme_options['above-header-submenu-item-border'] = $inside_border_enabled_values;
} else {
$theme_options['above-header-submenu-border'] = $border_disabled_values;
$theme_options['above-header-submenu-item-border'] = $inside_border_disabled_values;
}
// Below Header.
if ( $below_submenu_border ) {
$theme_options['below-header-submenu-border'] = $border_enabled_values;
$theme_options['below-header-submenu-item-border'] = $inside_border_enabled_values;
} else {
$theme_options['below-header-submenu-border'] = $border_disabled_values;
$theme_options['below-header-submenu-item-border'] = $inside_border_disabled_values;
}
update_option( 'astra-settings', $theme_options );
}
/**
* Set Above Header submenu border color 'above-header-submenu-border-color' to '#eaeaea' for old users who doesn't set any color and set the theme color who install the fresh v_1_6_0 plugin.
*
* @return void
*/
public static function v_1_6_0() {
$theme_options = get_option( 'astra-settings' );
// Set the default #eaeaea sub menu border color who doesn't set any color.
if ( ! isset( $theme_options['above-header-submenu-border-color'] ) || empty( $theme_options['above-header-submenu-border-color'] ) ) {
$theme_options['above-header-submenu-border-color'] = '#eaeaea';
}
// Set above and below header sub menu animation option to default for existing users.
if ( ! isset( $theme_options['below-header-submenu-container-animation'] ) || empty( $theme_options['below-header-submenu-container-animation'] ) ) {
$theme_options['below-header-submenu-container-animation'] = '';
}
if ( ! isset( $theme_options['above-header-submenu-container-animation'] ) ) {
$theme_options['above-header-submenu-container-animation'] = '';
}
update_option( 'astra-settings', $theme_options );
}
/**
* Change the Above Header and Below Header submenu option to be checkbpx rather than border selection.
* Apply the submenu border color to the submenu item border color for Above and Below Header.
*
* @return void
*/
public static function v_1_6_1() {
$theme_options = get_option( 'astra-settings', array() );
$above_header_submenu_otem_border = isset( $theme_options['above-header-submenu-item-border'] ) ? $theme_options['above-header-submenu-item-border'] : array();
$below_header_submenu_otem_border = isset( $theme_options['below-header-submenu-item-border'] ) ? $theme_options['below-header-submenu-item-border'] : array();
if ( ( is_array( $above_header_submenu_otem_border ) && '0' != $above_header_submenu_otem_border['bottom'] ) ) {
$theme_options['above-header-submenu-item-border'] = 1;
} else {
$theme_options['above-header-submenu-item-border'] = 0;
}
if ( ( is_array( $below_header_submenu_otem_border ) && '0' != $below_header_submenu_otem_border['bottom'] ) ) {
$theme_options['below-header-submenu-item-border'] = 1;
} else {
$theme_options['below-header-submenu-item-border'] = 0;
}
if ( isset( $theme_options['above-header-submenu-border-color'] ) && ! empty( $theme_options['above-header-submenu-border-color'] ) ) {
$theme_options['above-header-submenu-item-b-color'] = $theme_options['above-header-submenu-border-color'];
}
if ( isset( $theme_options['below-header-submenu-border-color'] ) && ! empty( $theme_options['below-header-submenu-border-color'] ) ) {
$theme_options['below-header-submenu-item-b-color'] = $theme_options['below-header-submenu-border-color'];
}
update_option( 'astra-settings', $theme_options );
}
/**
* Quick View Improvements.
*
* @since 1.6.10
*
* @return void
*/
public static function v_1_6_10() {
$theme_options = get_option( 'astra-settings' );
// Setting the value `true` for `Stick Add to Cart` option.
// For `Quick View` option for old users. For new users its `false`.
if ( ! isset( $theme_options['shop-quick-view-stick-cart'] ) ) {
$theme_options['shop-quick-view-stick-cart'] = true;
}
update_option( 'astra-settings', $theme_options );
}
/**
* If any advanced header is using existing breadcrumb layout then set a flag to keep using older version of breadcrumb.
*
* @return void
*/
public static function v1_8_0() {
$query_args = array(
'post_type' => 'astra_adv_header',
'posts_per_page' => 200, // phpcs:ignore WordPress.WP.PostsPerPage.posts_per_page_posts_per_page
// Limiting number of posts so that query does not timeout if there are too many posts.
'fields' => 'ids',
);
$page_headers = new WP_Query( $query_args );
$layouts = $page_headers->posts;
if ( is_array( $layouts ) && ! empty( $layouts ) ) {
foreach ( $layouts as $key => $layout_id ) {
$post_meta = get_post_meta( $layout_id, 'ast-advanced-headers-layout', true );
$breadcrumb = isset( $post_meta['breadcrumb'] ) ? $post_meta['breadcrumb'] : '';
if ( 'enabled' === $breadcrumb ) {
update_post_meta( $layout_id, 'astra-breadcrumb-old', 'true' );
}
}
}
wp_reset_postdata();
}
/**
* Flush bundled products After udpating to version 1.8.8
*
* @return void
*/
public static function v1_8_8() {
update_site_option( 'bsf_force_check_extensions', true );
}
}
}
/**
* Kicking this off by calling 'get_instance()' method
*/
Astra_Addon_Update::get_instance();