Astra_Customizer::prepare_customizer_javascript_configs()
Prepare Contexts and choices.
Description
Source
File: inc/customizer/class-astra-customizer.php
public function prepare_customizer_javascript_configs() {
global $wp_customize;
$cached_data = get_option( 'astra_partials_config_cache', false );
if ( $wp_customize->selective_refresh->is_render_partials_request() && $cached_data ) {
self::$dynamic_options = $cached_data;
return;
}
$configurations = $this->get_customizer_configurations();
$defaults = $this->get_astra_customizer_configuration_defaults();
foreach ( $configurations as $key => $configuration ) {
$config = wp_parse_args( $configuration, $defaults );
if ( isset( $configuration['context'] ) ) {
self::$contexts[ $configuration['name'] ] = $configuration['context'];
} else {
if ( isset( $configuration['type'] ) && ( ( 'control' === $configuration['type'] ) || ( 'sub-control' === $configuration['type'] ) ) ) {
if ( ( isset( $configuration['control'] ) && 'ast-builder-header-control' !== $configuration['control'] ) && ( isset( $configuration['name'] ) && strpos( $configuration['name'], 'ast-callback-notice' ) === false ) ) {
self::$contexts[ $configuration['name'] ] = Astra_Builder_Helper::$general_tab;
}
}
}
if ( isset( $configuration['choices'] ) ) {
self::$choices[ $configuration['name'] ] = $configuration['choices'];
}
switch ( $config['type'] ) {
case 'panel':
$this->prepare_javascript_panel_configs( $config );
break;
case 'section':
$this->prepare_javascript_section_configs( $config );
break;
case 'sub-control':
$this->prepare_javascript_sub_control_configs( $config );
break;
case 'control':
$this->prepare_javascript_control_configs( $config );
break;
}
}
update_option( 'astra_partials_config_cache', self::$dynamic_options, false );
}
Expand full source code Collapse full source code View on Trac
Changelog
| Version | Description |
|---|---|
| 3.0.0 | Introduced. |