On this page
unregister_meta_key( string $object_type, string $meta_key, string $object_subtype = '' ): bool
Unregisters a meta key from the list of registered keys.
Parameters
$object_typestring Required-
Type of object metadata is for. Accepts
'post','comment','term','user', or any other object type with an associated meta table. $meta_keystring Required-
Metadata key.
$object_subtypestring Optional-
The subtype of the object type.
Default:
''
Return
bool True if successful. False if the meta key was not registered.
Source
File: wp-includes/meta.php. View all references
function unregister_meta_key( $object_type, $meta_key, $object_subtype = '' ) {
global $wp_meta_keys;
if ( ! registered_meta_key_exists( $object_type, $meta_key, $object_subtype ) ) {
return false;
}
$args = $wp_meta_keys[ $object_type ][ $object_subtype ][ $meta_key ];
if ( isset( $args['sanitize_callback'] ) && is_callable( $args['sanitize_callback'] ) ) {
if ( ! empty( $object_subtype ) ) {
remove_filter( "sanitize_{$object_type}_meta_{$meta_key}_for_{$object_subtype}", $args['sanitize_callback'] );
} else {
remove_filter( "sanitize_{$object_type}_meta_{$meta_key}", $args['sanitize_callback'] );
}
}
if ( isset( $args['auth_callback'] ) && is_callable( $args['auth_callback'] ) ) {
if ( ! empty( $object_subtype ) ) {
remove_filter( "auth_{$object_type}_meta_{$meta_key}_for_{$object_subtype}", $args['auth_callback'] );
} else {
remove_filter( "auth_{$object_type}_meta_{$meta_key}", $args['auth_callback'] );
}
}
unset( $wp_meta_keys[ $object_type ][ $object_subtype ][ $meta_key ] );
// Do some clean up.
if ( empty( $wp_meta_keys[ $object_type ][ $object_subtype ] ) ) {
unset( $wp_meta_keys[ $object_type ][ $object_subtype ] );
}
if ( empty( $wp_meta_keys[ $object_type ] ) ) {
unset( $wp_meta_keys[ $object_type ] );
}
return true;
}
Related
Uses
| Uses | Description |
|---|---|
| registered_meta_key_exists() wp-includes/meta.php | Checks if a meta key is registered. |
| remove_filter() wp-includes/plugin.php | Removes a callback function from a filter hook. |
Used By
| Used By | Description |
|---|---|
| unregister_term_meta() wp-includes/taxonomy.php | Unregisters a meta key for terms. |
| unregister_post_meta() wp-includes/post.php | Unregisters a meta key for posts. |
Changelog
© 2003–2022 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/unregister_meta_key