unregister_taxonomy_for_object_type()
Открепляет таксономию от указанного типа записи (или другого объекта).
С помощью этой фукнции можно удалить таксономию у типа записи, после того как тип записи был зарегистрирован (и к нему уже была добавлена таксономия).
Таксономия должна быть зарегистрирована на момент срабатывания этой функции. Таксономии часто регистрируются на хуке init, а функция может вызываться раньше. По этой причине она может не срабатывать. Имейте это ввиду!
Эта функция лишь разрывается связь между таксономией и типом записи. Физически таксономия не удаляется. Чтобы удалить таксономию (отменить регистрацию), используйте unregister_taxonomy().
Хуки из функции
Возвращает
true|false
. True, если удалось отвязать таксономию.
Использование
unregister_taxonomy_for_object_type( $taxonomy, $object_type );
- $taxonomy(строка) (обязательный)
- Имя таксономии, указываемое в register_taxonomy() первым аргументом.
- $object_type(строка) (обязательный)
- Имя типа записи, указываемое в register_post_type() первым параметром.
Примеры
#1 Отвяжем "Метки" от "Записей"
Этот пример отвяжет "Метки" от "Записей", то есть в меню "Записи" пропадёт пункт "Метки", а при редактировании записи пропадёт метабокс "Метки". Физического удаления таксономии "Метки" не произойдёт.
add_action( 'init', 'prefix_unregister_tags', 99 ); function prefix_unregister_tags(){ unregister_taxonomy_for_object_type( 'post_tag', 'post' ); // Тоже самое можно сделать и с "Рубриками" // unregister_taxonomy_for_object_type( 'category', 'post' ); }
Заметки
- Global. WP_Taxonomy[]. $wp_taxonomies The registered taxonomies.
Список изменений
С версии 3.7.0 | Введена. |