Astra_Customizer::prepare_javascript_sub_control_configs( array $config )
Prepare Sub Control Configs for Javascript.
Description
Parameters
- $config
-
(array) (Required) configs.
Source
File: inc/customizer/class-astra-customizer.php
public function prepare_javascript_sub_control_configs( $config ) {
global $wp_customize;
unset( $config['type'] );
$sub_control_name = ASTRA_THEME_SETTINGS . '[' . astra_get_prop( $config, 'name' ) . ']';
$parent = astra_get_prop( $config, 'parent' );
$ignore_controls = array( 'ast-settings-group', 'ast-sortable', 'ast-radio-image', 'ast-slider', 'ast-responsive-slider' );
$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 );
}
$new_config = array(
'name' => $sub_control_name,
'datastore_type' => 'option',
'transport' => 'postMessage',
'control' => 'ast-hidden',
'section' => astra_get_prop( $config, 'section', 'title_tagline' ),
'title' => astra_get_prop( $config, 'title' ),
'priority' => astra_get_prop( $config, 'priority', '10' ),
'default' => astra_get_prop( $config, 'default' ),
'sanitize_callback' => $sanitize_callback,
'suffix' => astra_get_prop( $config, 'suffix' ),
'control_type' => astra_get_prop( $config, 'control' ),
);
self::$dynamic_options['settings'][ astra_get_prop( $new_config, 'name' ) ] = array(
'default' => astra_get_prop( $new_config, 'default' ),
'type' => astra_get_prop( $new_config, 'datastore_type' ),
'transport' => astra_get_prop( $new_config, 'transport', 'refresh' ),
'sanitize_callback' => astra_get_prop( $new_config, 'sanitize_callback', Astra_Customizer_Control_Base::get_sanitize_call( astra_get_prop( $new_config, 'control' ) ) ),
);
$new_config['type'] = astra_get_prop( $new_config, 'control' );
$new_config['id'] = astra_get_prop( $new_config, 'name' );
$new_config['settings'] = array( 'default' => astra_get_prop( $new_config, 'name' ) );
$new_config = self::bypass_control_configs( $new_config );
self::$js_configs ['sub_controls'] [ $parent ] [] = $new_config;
}
Expand full source code Collapse full source code View on Trac
Changelog
| Version | Description |
|---|---|
| 3.0.0 | Introduced. |