wp_get_post_categories

Retrieve the list of categories for a post.

Description

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

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

Returns (array)

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.

Parameters (2)

0. $post_id — Optional. (int)
The Post ID. Does not default to the ID of the global $post. Default 0.
1. $args — Optional. (array) => array()
Category arguments. See wp_get_object_terms(). Default empty.

Usage

  1. if ( !function_exists( 'wp_get_post_categories' ) ) { 
  2. require_once ABSPATH . WPINC . '/post.php'; 
  3.  
  4. // Optional. The Post ID. Does not default to the ID of the 
  5. // global $post. Default 0. 
  6. $post_id = -1; 
  7.  
  8. // Optional. Category arguments. See wp_get_object_terms(). Default empty. 
  9. $args = array(); 
  10.  
  11. // NOTICE! Understand what this does before running. 
  12. $result = wp_get_post_categories($post_id, $args); 
  13.  

Defined (1)

The function is defined in the following location(s).

/wp-includes/post.php  
  1. function wp_get_post_categories( $post_id = 0, $args = array() ) { 
  2. $post_id = (int) $post_id; 
  3.  
  4. $defaults = array('fields' => 'ids'); 
  5. $args = wp_parse_args( $args, $defaults ); 
  6.  
  7. $cats = wp_get_object_terms($post_id, 'category', $args); 
  8. return $cats;