register_taxonomy_for_object_type( string $taxonomy, string $object_type )

Add an already registered taxonomy to an object type.


Parameters Parameters

$taxonomy

(string) (Required) Name of taxonomy object.

$object_type

(string) (Required) Name of the object type.


Top ↑

Return Return

(bool) True if successful, false if not.



Top ↑

Source Source

File: wp-includes/taxonomy.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 );

	/**
	 * Fires after a taxonomy is registered for an object type.
	 *
	 * @since 5.1.0
	 *
	 * @param string $taxonomy    Taxonomy name.
	 * @param string $object_type Name of the object type.
	 */
	do_action( 'registered_taxonomy_for_object_type', $taxonomy, $object_type );

	return true;
}

Top ↑

Changelog Changelog

Changelog
Version Description
3.0.0 Introduced.

Top ↑

User Contributed Notes User Contributed Notes

  1. Skip to note 2 content
    Contributed by davidguerreiro

    Do not forget to use the init hook to run this function. If not, the taxonomy and / or the CPT you want to reference might not have been created yet.

    /**
     * Share taxonomy pdf-groups with posts
     *
     * @return void
     */
    function namespace_share_category_with_pages() {
    	register_taxonomy_for_object_type( 'category', 'page' );
    }
    
    add_action( 'init', 'namespace_share_category_with_pages' );
    

You must log in before being able to contribute a note or feedback.