WordPress at a glance

get_categories() WP 1.0

Retrieve list of category objects.

If you change the type to 'link' in the arguments, then the link categories will be returned instead. Also all categories will be updated to be backward compatible with pre-2.3 plugins and themes.

  • See: get_terms() Type of arguments that can be changed.
Is the basis for: wp_list_categories()
Works based on: get_terms()
✈ 1 time = 0.005625s = very slow | 50000 times = 11.98s = slow PHP 7.1.11, WP 4.9.5

No Hooks.

Return

Array. List of categories.

Usage

get_categories( $args );
$args(string/array)

Arguments to retrieve categories. See get_terms() for additional options.

  • $taxonomy (string)
    Taxonomy to retrieve terms for. In this case, default 'category'.

Default: ''

Code of get_categories: wp-includes/category.php VER 5.0.1

<?php
function get_categories( $args = '' ) {
	$defaults = array( 'taxonomy' => 'category' );
	$args = wp_parse_args( $args, $defaults );

	$taxonomy = $args['taxonomy'];

	/**
	 * Filters the taxonomy used to retrieve terms when calling get_categories().
	 *
	 * @since 2.7.0
	 *
	 * @param string $taxonomy Taxonomy to retrieve terms from.
	 * @param array  $args     An array of arguments. See get_terms().
	 */
	$taxonomy = apply_filters( 'get_categories_taxonomy', $taxonomy, $args );

	// Back compat
	if ( isset($args['type']) && 'link' == $args['type'] ) {
		_deprecated_argument( __FUNCTION__, '3.0.0',
			/* translators: 1: "type => link", 2: "taxonomy => link_category" */
			sprintf( __( '%1$s is deprecated. Use %2$s instead.' ),
				'<code>type => link</code>',
				'<code>taxonomy => link_category</code>'
			)
		);
		$taxonomy = $args['taxonomy'] = 'link_category';
	}

	$categories = get_terms( $taxonomy, $args );

	if ( is_wp_error( $categories ) ) {
		$categories = array();
	} else {
		$categories = (array) $categories;
		foreach ( array_keys( $categories ) as $k ) {
			_make_cat_compat( $categories[ $k ] );
		}
	}

	return $categories;
}

Related Functions

From category: Categories

No comments
    Hello, !     Log In . Register