metadata_exists( string $meta_type, int $object_id, string $meta_key ): bool
- Since
- 3.3.0
- Source
wp-includes/meta.php:763
Determines if a meta field with the given key exists for the given object ID.
Parameters
$meta_typestring- Type of object metadata is for. Accepts 'blog', 'post', 'comment', 'term', 'user', or any other object type with an associated meta table.
$object_idint- ID of the object metadata is for.
$meta_keystring- Metadata key.
Return
bool- Whether a meta field with the given key exists.
Hooks fired · 1
One hook fires while metadata_exists() runs, in this order:
- apply_filters( get_{$meta_type}_metadata )filterline 774 (+11 into the body)
Short-circuits the return value of a meta field.
Uses · 4
- absint()Converts a value to non-negative integer.
- apply_filters()Calls the callback functions that have been added to a filter hook.
- wp_cache_get()Retrieves the cache contents from the cache by key and group.
- update_meta_cache()Updates the metadata cache for the specified objects.
Used by · 4
- WP_Post::__isset()Isset-er.
- WP_User::__isset()Magic method for checking the existence of a certain custom field.
- wp_install_defaults()Creates the initial content for a newly-installed site.
- wp_save_revisioned_meta_fields()Save the revisioned meta fields.
Source
function metadata_exists( $meta_type, $object_id, $meta_key ) { if ( ! $meta_type || ! is_numeric( $object_id ) ) { return false; } $object_id = absint( $object_id ); if ( ! $object_id ) { return false; } /** This filter is documented in wp-includes/meta.php */ $check = apply_filters( "get_{$meta_type}_metadata", null, $object_id, $meta_key, true, $meta_type ); if ( null !== $check ) { return (bool) $check; } $meta_cache = wp_cache_get( $object_id, $meta_type . '_meta' ); if ( ! $meta_cache ) { $meta_cache = update_meta_cache( $meta_type, array( $object_id ) ); $meta_cache = $meta_cache[ $object_id ]; } if ( isset( $meta_cache[ $meta_key ] ) ) { return true; } return false;}History
Introduced in 3.3.0. Unchanged from 6.7.7 through 7.1.0.
Signature, return type and hooks compared across 5 parsed releases.
About this page
- Parsed data
- Generated from the wordpress-develop 7.1.0 tag, from
src/wp-includes/meta.php, and regenerated for each WordPress release so it tracks the code rather than a snapshot of it. - Corrections
- Something wrong on this page? Report it and it gets fixed in the next regeneration.