WP_Term is a WordPress class that represents a taxonomy term. A term is a way to group related content in WordPress, and it can be used with any taxonomy, including the built-in categories and tags taxonomies, as well as any custom taxonomies you create.
The WP_Term
object provides access to all of the term’s properties, such as the term’s name, slug, description, and parent term. You can also retrieve the term’s associated meta data using the get_term_meta()
function.
Here are some of the most common properties of the WP_Term
object:
$term_id
: The ID of the term.$name
: The name of the term.$slug
: The term’s slug, which is used in URLs.$term_group
: The term group, if any. This property is no longer used in WordPress, but it is still available for backward compatibility.$term_taxonomy_id
: The ID of the term’s taxonomy.$taxonomy
: The name of the taxonomy associated with the term.$description
: The description of the term.$parent
: The ID of the term’s parent term.$count
: The number of posts assigned to the term.- $filter: Stores the term object’s sanitization level.
You can create a new WP_Term
object using the get_term()
function, which accepts either the term ID or the term slug as its first argument. Once you have a WP_Term
object, you can use its properties to display information about the term, or you can use its methods to retrieve related data, such as the term’s parent or child terms.
Here is an example of how to create a new WP_Term
object and display some of its properties:
// Get the term with the ID of 5
$term = get_term(5);
// Display the term's name and slug
echo 'Term name: ' . $term->name . '<br>';
echo 'Term slug: ' . $term->slug . '<br>';
// Display the term's parent, if any
if ($term->parent) {
$parent = get_term($term->parent);
echo 'Parent term: ' . $parent->name . '<br>';
}
// Display the number of posts assigned to the term
echo 'Post count: ' . $term->count . '<br>';
Some examples of methods you can use with the WP_Term object in WordPress:
get_term_link()
– Returns the URL of the archive page for a term.
$term_link = get_term_link( $term );
get_term_meta()
– Returns the meta value for a specific meta key of a term.
$meta_value = get_term_meta( $term_id, 'meta_key', true );
get_term_children()
– Returns an array of child term objects for a parent term.
$child_terms = get_term_children( $term_id, 'taxonomy' );
wp_set_object_terms()
– Assigns terms to an object (post, user, etc.).
wp_set_object_terms( $post_id, $term_ids, 'taxonomy' );
wp_remove_object_terms()
– Removes terms from an object (post, user, etc.).
wp_remove_object_terms( $post_id, $term_ids, 'taxonomy' );
In conclusion, the WP_Term object provides a wide range of properties that can be used to retrieve and modify term information in WordPress. These properties can be used in various scenarios, such as displaying term information on the front end or modifying term information in the back end. Understanding the WP_Term object and its properties is essential for any WordPress developer working with taxonomies.