metadata_exists( string $meta_type, int $object_id, string $meta_key )
Determine if a meta key is set for a given object
Description Description
Parameters Parameters
- $meta_type
-
(string) (Required) Type of object metadata is for (e.g., comment, post, term, or user).
- $object_id
-
(int) (Required) ID of the object metadata is for
- $meta_key
-
(string) (Required) Metadata key.
Return Return
(bool) True of the key is set, false if not.
Source Source
File: wp-includes/meta.php
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 );
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;
}
Expand full source code Collapse full source code View on Trac
Changelog Changelog
| Version | Description |
|---|---|
| 3.3.0 | Introduced. |
User Contributed Notes User Contributed Notes
You must log in before being able to contribute a note or feedback.
// Check and get a term meta if ( metadata_exists( 'term', $term_id, '_meta_key' ) ) { $meta_value = get_term_meta( $term_id, '_meta_key', true ); } // Check and get a post meta if ( metadata_exists( 'post', $post_id, '_meta_key' ) ) { $meta_value = get_post_meta( $post_id, '_meta_key', true ); } // Check and get a user meta if ( metadata_exists( 'user', $user_id, '_meta_key' ) ) { $meta_value = get_user_meta( $user_id, '_meta_key', true ); }Expand full source codeCollapse full source code