WP_Customize_Widgets::get_setting_args()publicWP 3.9.0

Retrieves common arguments to supply when constructing a Customizer setting.

Метод класса: WP_Customize_Widgets{}

Хуки из метода

Возвращает

Массив. Possibly modified setting arguments.

Использование

$WP_Customize_Widgets = new WP_Customize_Widgets();
$WP_Customize_Widgets->get_setting_args( $id, $overrides );
$id(строка) (обязательный)
Widget setting ID.
$overrides(массив)
Array of setting overrides.
По умолчанию: array()

Список изменений

С версии 3.9.0 Введена.

Код WP_Customize_Widgets::get_setting_args() WP 6.5.2

public function get_setting_args( $id, $overrides = array() ) {
	$args = array(
		'type'       => 'option',
		'capability' => 'edit_theme_options',
		'default'    => array(),
	);

	if ( preg_match( $this->setting_id_patterns['sidebar_widgets'], $id, $matches ) ) {
		$args['sanitize_callback']    = array( $this, 'sanitize_sidebar_widgets' );
		$args['sanitize_js_callback'] = array( $this, 'sanitize_sidebar_widgets_js_instance' );
		$args['transport']            = current_theme_supports( 'customize-selective-refresh-widgets' ) ? 'postMessage' : 'refresh';
	} elseif ( preg_match( $this->setting_id_patterns['widget_instance'], $id, $matches ) ) {
		$id_base                      = $matches['id_base'];
		$args['sanitize_callback']    = function ( $value ) use ( $id_base ) {
			return $this->sanitize_widget_instance( $value, $id_base );
		};
		$args['sanitize_js_callback'] = function ( $value ) use ( $id_base ) {
			return $this->sanitize_widget_js_instance( $value, $id_base );
		};
		$args['transport']            = $this->is_widget_selective_refreshable( $matches['id_base'] ) ? 'postMessage' : 'refresh';
	}

	$args = array_merge( $args, $overrides );

	/**
	 * Filters the common arguments supplied when constructing a Customizer setting.
	 *
	 * @since 3.9.0
	 *
	 * @see WP_Customize_Setting
	 *
	 * @param array  $args Array of Customizer setting arguments.
	 * @param string $id   Widget setting ID.
	 */
	return apply_filters( 'widget_customizer_setting_args', $args, $id );
}