Retrieves category data given a category ID or category object.
Description
If you pass the $category parameter an object, which is assumed to be the category row object retrieved the database. It will cache the category data.
If you pass $category an integer of the category ID, then that category will be retrieved from the database, if it isn’t already cached, and pass it back.
If you look at get_term() , then both types will be passed through several filters and finally sanitized based on the $filter parameter value.
Parameters
$category
int|objectrequired- Category ID or category row object.
$output
stringoptional- The required return type. One of OBJECT, ARRAY_A, or ARRAY_N, which correspond to a WP_Term object, an associative array, or a numeric array, respectively.
Default:
OBJECT
$filter
stringoptional- How to sanitize category fields. Default
'raw'
.Default:
'raw'
Source
function get_category( $category, $output = OBJECT, $filter = 'raw' ) {
$category = get_term( $category, 'category', $output, $filter );
if ( is_wp_error( $category ) ) {
return $category;
}
_make_cat_compat( $category );
return $category;
}
Changelog
Version | Description |
---|---|
1.5.1 | Introduced. |
Example passing Category ID (integer):
The output of
print_r( $category );
would be similar to:stdClass Object
(
[term_id] => 106
[name] => Category Name
[slug] => category-name
[term_group] => 0
[term_taxonomy_id] => 108
[taxonomy] => category
[description] => This is the category description.
[parent] => 62
[count] => 17
[filter] => raw
[cat_ID] => 106
[category_count] => 17
[category_description] => This is the category description.
[cat_name] => Category Name
[category_nicename] => category-name
[category_parent] => 62
)
Perform a check if category with cat ID has any number of posts.
Get current category data on a category template: