WP_REST_Meta_Fields::is_meta_value_same_as_stored_value() protected WP 5.5.0
Checks if the user provided value is equivalent to a stored value for the given meta key.
{} It's a method of the class: WP_REST_Meta_Fields{}
No Hooks.
Return
true/false.
Usage
// protected - for code of main (parent) or child class $result = $this->is_meta_value_same_as_stored_value( $meta_key, $subtype, $stored_value, $user_value );
- $meta_key(string) (required)
- The meta key being checked.
- $subtype(string) (required)
- The object subtype.
- $stored_value(mixed) (required)
- The currently stored value retrieved from get_metadata().
- $user_value(mixed) (required)
- The value provided by the user.
Changelog
Since 5.5.0 | Introduced. |
Code of WP_REST_Meta_Fields::is_meta_value_same_as_stored_value() WP REST Meta Fields::is meta value same as stored value WP 5.6
protected function is_meta_value_same_as_stored_value( $meta_key, $subtype, $stored_value, $user_value ) {
$args = $this->get_registered_fields()[ $meta_key ];
$sanitized = sanitize_meta( $meta_key, $user_value, $this->get_meta_type(), $subtype );
if ( in_array( $args['type'], array( 'string', 'number', 'integer', 'boolean' ), true ) ) {
// The return value of get_metadata will always be a string for scalar types.
$sanitized = (string) $sanitized;
}
return $sanitized === $stored_value;
}