Astra_Customizer::prepare_javascript_control_configs( array $config )
Prepare Control Configs for Javascript.
Description
Parameters
- $config
-
(array) (Required) configs.
Source
File: inc/customizer/class-astra-customizer.php
public function prepare_javascript_control_configs( $config ) { global $wp_customize; // Remove type from configuration. unset( $config['type'] ); $ignore_controls = array( 'ast-settings-group', 'ast-sortable', 'ast-radio-image', 'ast-slider', 'ast-responsive-slider' ); if ( ! isset( $config['control'] ) ) { return; } $sanitize_callback = ( in_array( $config['control'], $ignore_controls, true ) ) ? false : astra_get_prop( $config, 'sanitize_callback', Astra_Customizer_Control_Base::get_sanitize_call( astra_get_prop( $config, 'control' ) ) ); if ( ! $sanitize_callback ) { $config = $this->sanitize_control( $config ); } $config['label'] = astra_get_prop( $config, 'title' ); $config['type'] = astra_get_prop( $config, 'control' ); /** @psalm-suppress InvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort if ( false !== astra_get_prop( $config, 'font-type', false ) ) { /** @psalm-suppress InvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort $config['type'] = astra_get_prop( $config, 'font-type', false ); } if ( 'image' === $config['type'] ) { $this->prepare_preload_controls( $config ); } if ( isset( $config['active_callback'] ) ) { self::$js_configs ['skip_context'] [] = astra_get_prop( $config, 'name' ); $this->prepare_preload_controls( $config ); return; } self::$dynamic_options['settings'][ astra_get_prop( $config, 'name' ) ] = array( 'default' => astra_get_prop( $config, 'default' ), 'type' => astra_get_prop( $config, 'datastore_type' ), 'transport' => astra_get_prop( $config, 'transport', 'refresh' ), 'sanitize_callback' => $sanitize_callback, ); /** @psalm-suppress InvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort if ( astra_get_prop( $config, 'partial', false ) ) { self::$dynamic_options['partials'][ astra_get_prop( $config, 'name' ) ] = array( 'selector' => astra_get_prop( $config['partial'], 'selector' ), 'render_callback' => astra_get_prop( $config['partial'], 'render_callback' ), 'containerInclusive' => astra_get_prop( $config['partial'], 'container_inclusive' ), 'fallbackRefresh' => astra_get_prop( $config['partial'], 'fallback_refresh', true ), ); } $config['id'] = astra_get_prop( $config, 'name' ); $config['settings'] = array( 'default' => astra_get_prop( $config, 'name' ) ); $config = self::bypass_control_configs( $config ); if ( isset( $config['section'] ) ) { self::$js_configs ['controls'] [ $config['section'] ] [] = $config; } }
Expand full source code Collapse full source code View on Trac
Changelog
Version | Description |
---|---|
3.0.0 | Introduced. |