register_taxonomy_for_object_type

Привязывает (добавляет) указанную таксономию к указанному типу записи (поста).

Используется, чтобы к типу поста добавить таксономию, например добавить метки к постоянным страницам.

Хуков нет.

Возвращает

true/false. true, если удалось связать таксономию.

Использование

<?php register_taxonomy_for_object_type( $taxonomy, $object_type ); ?>
$taxonomy(строка) (обязательный)
Название таксономии.
По умолчанию: нет
$object_type(строка) (обязательный)
Название типа поста, к которому будет привязана таксономия.
По умолчанию: нет

Примеры

#1 Используя следующий код, мы можем привязать метки к постоянным страницам WP.

add_action( 'init', 'post_tag_for_pages' );
function post_tag_for_pages(){
	register_taxonomy_for_object_type( 'post_tag', 'page');
}

В итоге в админке, при редактировании страниц у нас появится блок меток, как у постов:

tagsdiv-post_tag

Код из


wp-includes/taxonomy.php

WP 4.7.2

<?php
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 ) )
		$wp_taxonomies[$taxonomy]->object_type[] = $object_type;

	// Filter out empties.
	$wp_taxonomies[ $taxonomy ]->object_type = array_filter( $wp_taxonomies[ $taxonomy ]->object_type );

	return true;
}