WordPress at Your Fingertips

wp_get_post_categories() WP 1.0

Retrieve the list of categories for a post.

Compatibility layer for themes and plugins. Also an easy layer of abstraction away from the complexity of the taxonomy layer.

1 time — 0.00111 sec (very slow) | 50000 times — 43.9 sec (very slow)

No Hooks.


Array|WP_Error. List of categories. If the $fields argument passed via $args is 'all' or 'all_with_object_id', an array of WP_Term objects will be returned. If $fields is 'ids', an array of category IDs. If $fields is 'names', an array of category names. WP_Error object if 'category' taxonomy doesn't exist.


wp_get_post_categories( $post_id, $args );
The Post ID. Does not default to the ID of the global $post.
Category query parameters. See WP_Term_Query::__construct() for supported arguments.
Default: empty array



Since 2.1.0 Introduced.

Code of wp_get_post_categories() WP 5.8.1

function wp_get_post_categories( $post_id = 0, $args = array() ) {
	$post_id = (int) $post_id;

	$defaults = array( 'fields' => 'ids' );
	$args     = wp_parse_args( $args, $defaults );

	$cats = wp_get_object_terms( $post_id, 'category', $args );
	return $cats;

For posts

No comments
    Log In