unregister_taxonomy( string $taxonomy )
Unregisters a taxonomy.
Description
Can not be used to unregister built-in taxonomies.
Parameters
- $taxonomy
-
(Required) Taxonomy name.
Return
(bool|WP_Error) True on success, WP_Error on failure or if the taxonomy doesn't exist.
Source
File: wp-includes/taxonomy.php
function unregister_taxonomy( $taxonomy ) {
if ( ! taxonomy_exists( $taxonomy ) ) {
return new WP_Error( 'invalid_taxonomy', __( 'Invalid taxonomy.' ) );
}
$taxonomy_object = get_taxonomy( $taxonomy );
// Do not allow unregistering internal taxonomies.
if ( $taxonomy_object->_builtin ) {
return new WP_Error( 'invalid_taxonomy', __( 'Unregistering a built-in taxonomy is not allowed.' ) );
}
global $wp_taxonomies;
$taxonomy_object->remove_rewrite_rules();
$taxonomy_object->remove_hooks();
// Remove the taxonomy.
unset( $wp_taxonomies[ $taxonomy ] );
/**
* Fires after a taxonomy is unregistered.
*
* @since WP-4.5.0
*
* @param string $taxonomy Taxonomy name.
*/
do_action( 'unregistered_taxonomy', $taxonomy );
return true;
}
Changelog
Version | Description |
---|---|
WP-4.5.0 | Introduced. |