WP_Customize_Manager::post_value( WP_Customize_Setting $setting, mixed $default_value = null ): string|mixed

Returns the sanitized value for a given setting from the current customized state.


Description

The name "post_value" is a carry-over from when the customized state was exclusively sourced from $_POST['customized']. Nevertheless, the value returned will come from the current changeset post and from the incoming post data.

Top ↑

See also


Top ↑

Parameters

$setting WP_Customize_Setting Required
A WP_Customize_Setting derived object.
$default_value mixed Optional
Value returned if $setting has no post value (added in 4.2.0) or the post value is invalid (added in 4.6.0).

Default: null


Top ↑

Return

string|mixed Sanitized value or the $default_value provided.


Top ↑

Source

File: wp-includes/class-wp-customize-manager.php. View all references

public function post_value( $setting, $default_value = null ) {
	$post_values = $this->unsanitized_post_values();
	if ( ! array_key_exists( $setting->id, $post_values ) ) {
		return $default_value;
	}

	$value = $post_values[ $setting->id ];
	$valid = $setting->validate( $value );
	if ( is_wp_error( $valid ) ) {
		return $default_value;
	}

	$value = $setting->sanitize( $value );
	if ( is_null( $value ) || is_wp_error( $value ) ) {
		return $default_value;
	}

	return $value;
}


Top ↑

Changelog

Changelog
Version Description
4.6.0 $default_value is now returned early when the setting post value is invalid.
4.1.1 Introduced the $default_value parameter.
3.4.0 Introduced.

Top ↑

User Contributed Notes

You must log in before being able to contribute a note or feedback.