# Функция register_taxonomy_for_object_type()
Функция register_taxonomy_for_object_type() позволяет добавить уже зарегистрированную таксономию к определенному типу объекта в WordPress.
## Основная информация
- **Версия:** WP 3.0.0
- **Среднее время выполнения:**
- 1 раз — 0.000001 сек (скорость света)
- 50000 раз — 0.03 сек (скорость света)
- **PHP версия:** 7.1.11, WP 4.9.8
## Хуки функции
- **registered_taxonomy_for_object_type**
## Возвращаемое значение
- true — если все прошло успешно.
- false — если возникла ошибка.
## Использование
```php
register_taxonomy_for_object_type( $taxonomy, $object_type );
- $taxonomy (string) — название таксономии.
- $object_type (string) — название типа объекта.
Примеры использования
Пример 1
Используя следующий код, мы можем привязать метки (tags) к статическим страницам WordPress.
add_action( 'init', 'post_tag_for_pages' );
function post_tag_for_pages() {
register_taxonomy_for_object_type( 'post_tag', 'page' );
}
Важно не забыть использовать хук init, чтобы этот код сработал. Если не использовать хук, то таксономия или пользовательский тип записи (CPT), который вы пытаетесь использовать, возможно, еще не был создан.
В итоге, в админке, при редактировании страниц, у нас будет блок меток, как в записях:

Примечания
- Глобальная переменная:
$wp_taxonomies. Здесь хранятся зарегистрированные таксономии.
Изменения в версии
- С 3.0.0 — функция была введена.
Исходный код функции
function register_taxonomy_for_object_type( $taxonomy, $object_type ) {
global $wp_taxonomies;
if ( ! isset( $wp_taxonomies[ $taxonomy ] ) ) {
return false;
}
if ( ! get_post_type_object( $object_type ) ) {
return false;
}
if ( ! in_array( $object_type, $wp_taxonomies[ $taxonomy ]->object_type, true ) ) {
$wp_taxonomies[ $taxonomy ]->object_type[] = $object_type;
}
// Убираем пустые значения.
$wp_taxonomies[ $taxonomy ]->object_type = array_filter( $wp_taxonomies[ $taxonomy ]->object_type );
/**
* Срабатывает после регистрации таксономии для типа объекта.
*
* @param string $taxonomy Название таксономии.
* @param string $object_type Название типа объекта.
*/
do_action( 'registered_taxonomy_for_object_type', $taxonomy, $object_type );
return true;
}
Связанные функции
Хотите узнать больше о таксономиях, таких как категории и метки? Вот некоторые связанные функции:
edit_term_link()get_edit_term_link()get_taxonomies()get_taxonomy()get_term()get_term_by()get_term_children()get_term_field()get_term_link()get_terms()is_taxonomy_hierarchical()register_taxonomy()sanitize_term()sanitize_term_field()single_term_title()taxonomy_exists()term_description()term_exists()term_is_ancestor_of()the_terms()unregister_taxonomy()unregister_taxonomy_for_object_type()wp_count_terms()wp_delete_term()wp_get_term_taxonomy_parent_id()wp_insert_term()wp_update_term()wp_update_term_count()
Эти функции помогут вам лучше работать с таксономиями в WordPress.