WP_Customize_Setting::__construct()
Constructor.
Any supplied $args override class property defaults.
Метод класса: WP_Customize_Setting{}
Хуков нет.
Возвращает
null
. Ничего (null).
Использование
$WP_Customize_Setting = new WP_Customize_Setting(); $WP_Customize_Setting->__construct( $manager, $id, $args );
- $manager(WP_Customize_Manager) (обязательный)
- Customizer bootstrap instance.
- $id(строка) (обязательный)
- A specific ID of the setting. Can be a theme mod or option name.
- $args(массив)
Array of properties for the new Setting object.
По умолчанию: empty array
-
type(строка)
Type of the setting.
По умолчанию: 'theme_mod' -
capability(строка)
Capability required for the setting.
По умолчанию: 'edit_theme_options' -
theme_supports(строка|string[])
Theme features required to support the panel.
По умолчанию: none -
default(строка)
Default value for the setting.
По умолчанию: empty string -
transport(строка)
Options for rendering the live preview of changes in Customizer. Using 'refresh' makes the change visible by reloading the whole preview. Using 'postMessage' allows a custom JavaScript to handle live changes.
По умолчанию: 'refresh' -
validate_callback(callable)
Server-side validation callback for the setting's value. -
sanitize_callback(callable)
Callback to filter a Customize setting value in un-slashed form. -
sanitize_js_callback(callable)
Callback to convert a Customize PHP setting value to a value that is JSON serializable. - dirty(true|false)
Whether or not the setting is initially dirty when created.
-
Список изменений
С версии 3.4.0 | Введена. |
Код WP_Customize_Setting::__construct() WP Customize Setting:: construct WP 6.7.1
public function __construct( $manager, $id, $args = array() ) { $keys = array_keys( get_object_vars( $this ) ); foreach ( $keys as $key ) { if ( isset( $args[ $key ] ) ) { $this->$key = $args[ $key ]; } } $this->manager = $manager; $this->id = $id; // Parse the ID for array keys. $this->id_data['keys'] = preg_split( '/\[/', str_replace( ']', '', $this->id ) ); $this->id_data['base'] = array_shift( $this->id_data['keys'] ); // Rebuild the ID. $this->id = $this->id_data['base']; if ( ! empty( $this->id_data['keys'] ) ) { $this->id .= '[' . implode( '][', $this->id_data['keys'] ) . ']'; } if ( $this->validate_callback ) { add_filter( "customize_validate_{$this->id}", $this->validate_callback, 10, 3 ); } if ( $this->sanitize_callback ) { add_filter( "customize_sanitize_{$this->id}", $this->sanitize_callback, 10, 2 ); } if ( $this->sanitize_js_callback ) { add_filter( "customize_sanitize_js_{$this->id}", $this->sanitize_js_callback, 10, 2 ); } if ( 'option' === $this->type || 'theme_mod' === $this->type ) { // Other setting types can opt-in to aggregate multidimensional explicitly. $this->aggregate_multidimensional(); // Allow option settings to indicate whether they should be autoloaded. if ( 'option' === $this->type && isset( $args['autoload'] ) ) { self::$aggregated_multidimensionals[ $this->type ][ $this->id_data['base'] ]['autoload'] = $args['autoload']; } } }