wp_filter_object_list() WordPress Function

The wp_filter_object_list() function allows you to filter an array of objects based on certain criteria. This can be useful when you want to only get a list of objects that match certain criteria, such as only getting objects that have a certain key/value pair.

wp_filter_object_list( array $list, array $args = array(), string $operator = 'and', bool|string $field = false ) #

Filters a list of objects, based on a set of key => value arguments.


Description

Retrieves the objects from the list that match the given arguments. Key represents property name, and value represents property value.

If an object has more properties than those specified in arguments, that will not disqualify it. When using the ‘AND’ operator, any missing properties will disqualify it.

When using the $field argument, this function can also retrieve a particular field from all matching objects, whereas wp_list_filter() only does the filtering.


Top ↑

Parameters

$list

(array)(Required)An array of objects to filter.

$args

(array)(Optional) An array of key => value arguments to match against each object.

Default value: array()

$operator

(string)(Optional) The logical operation to perform. 'AND' means all elements from the array must match. 'OR' means only one element needs to match. 'NOT' means no elements may match. Default 'AND'.

Default value: 'and'

$field

(bool|string)(Optional) A field from the object to place instead of the entire object.

Default value: false


Top ↑

Return

(array) A list of objects or object fields.


Top ↑

Source

File: wp-includes/functions.php

function wp_filter_object_list( $list, $args = array(), $operator = 'and', $field = false ) {
	if ( ! is_array( $list ) ) {
		return array();
	}

	$util = new WP_List_Util( $list );

	$util->filter( $args, $operator );

	if ( $field ) {
		$util->pluck( $field );
	}

	return $util->get_output();
}


Top ↑

Changelog

Changelog
VersionDescription
4.7.0Uses WP_List_Util class.
3.0.0Introduced.

The content displayed on this page has been created in part by processing WordPress source code files which are made available under the GPLv2 (or a later version) license by theĀ Free Software Foundation. In addition to this, the content includes user-written examples and information. All material is subject to review and curation by the WPPaste.com community.

Show More
Show More