Функция register_taxonomy_for_object_type()
используется для привязки уже зарегистрированной таксономии к указанному типу записи (поста). Это полезно, когда вы хотите добавить существующую таксономию, например метки или категории, к другому типу записи, такому как страницы.
register_taxonomy_for_object_type( string $taxonomy, string $object_type ): bool
Параметры
- $taxonomy (string) (обязательный): Название таксономии.
- $object_type (string) (обязательный): Название типа поста.
Возвращаемое значение
- bool: Возвращает
true
, если таксономия успешно привязана к типу записи, иfalse
в противном случае.
Важное замечание
Не забудьте использовать хук init
для выполнения этой функции. В противном случае таксономия и/или пользовательский тип записи (CPT), к которому вы хотите привязать таксономию, могут еще не быть созданы.
Пример использования
/**
* Привязка таксономии 'category' к типу записи 'page'
*
* @return void
*/
function namespace_share_category_with_pages() {
register_taxonomy_for_object_type( 'category', 'page' );
}
add_action( 'init', 'namespace_share_category_with_pages' );
Этот код привязывает таксономию ‘category’ к типу записи ‘page’. В результате, при редактировании страниц в админке WordPress появится блок категорий, как у постов.
Другие примеры
Пример 1: Привязка меток к страницам
add_action( 'init', 'post_tag_for_pages' );
function post_tag_for_pages(){
register_taxonomy_for_object_type( 'post_tag', 'page');
}
Этот код привязывает таксономию ‘post_tag’ к типу записи ‘page’. В результате, при редактировании страниц в админке WordPress появится блок меток, как у постов.
Пример 2: Привязка пользовательской таксономии к пользовательскому типу записи
function custom_taxonomy_for_books() {
register_taxonomy_for_object_type('genre', 'books');
}
add_action('init', 'custom_taxonomy_for_books');
Заключение
Использование функции register_taxonomy_for_object_type()
позволяет гибко управлять таксономиями и типами записей в WordPress, расширяя возможности классификации контента на вашем сайте.