bbp_get_user_object_ids( array $args = array() )
Get a user’s object IDs
Description Description
For the most part, you should not need to use this function, and may even want to come up with a more efficient way to get IDs on your own. Nevertheless, it is available here for your convenience, using the most efficient query parameters available inside of the various query APIs.
Parameters Parameters
- $user_id
-
(Required) The user id
- $rel_key
-
(Required) The relationship key
- $rel_type
-
(Required) The relationship type (usually 'post')
- $args
-
(Optional) The arguments to override defaults
Default value: array()
Return Return
(array|bool) Results if user has objects, otherwise null
Source Source
File: includes/users/engagements.php
function bbp_get_user_object_ids( $args = array() ) { $object_ids = $defaults = array(); // Parse arguments $r = bbp_parse_args( $args, array( 'user_id' => 0, 'object_type' => bbp_get_topic_post_type(), 'rel_key' => '', 'rel_type' => 'post', 'filter' => 'user_object_ids', 'args' => array() ), 'get_user_object_ids' ); // Sanitize arguments $r['user_id'] = bbp_get_user_id( $r['user_id'] ); $r['rel_key'] = sanitize_key( $r['rel_key'] ); $r['rel_type'] = sanitize_key( $r['rel_type'] ); $r['object_type'] = sanitize_key( $r['object_type'] ); $r['filter'] = sanitize_key( $r['filter'] ); // Defaults if ( 'post' === $r['rel_type'] ) { $defaults = array( 'fields' => 'ids', 'post_type' => $r['object_type'], 'posts_per_page' => -1, 'meta_query' => array( array( 'key' => $r['rel_key'], 'value' => $r['user_id'], 'compare' => 'NUMERIC' ), // Performance 'nopaging' => true, 'suppress_filters' => true, 'update_post_term_cache' => false, 'update_post_meta_cache' => false, 'ignore_sticky_posts' => true, 'no_found_rows' => true ) ); } // Parse arguments $query_args = bbp_parse_args( $r['args'], $defaults, "get_{$r['filter']}_args" ); // Queries if ( 'post' === $r['rel_type'] ) { $query = new WP_Query( $query_args ); $object_ids = $query->posts; } // Filter & return return (array) apply_filters( "bbp_get_{$r['filter']}", $object_ids, $r, $args ); }
Changelog Changelog
Version | Description |
---|---|
2.6.0 | Introduced. |