BP_REST_Groups_Endpoint::get_collection_params()
Get the query params for collections of groups.
Description
Return
(array)
Source
File: bp-groups/classes/class-bp-rest-groups-endpoint.php
public function get_collection_params() {
$params = parent::get_collection_params();
$params['context']['default'] = 'view';
$params['type'] = array(
'description' => __( 'Shorthand for certain orderby/order combinations.', 'buddyboss' ),
'default' => 'active',
'type' => 'string',
'enum' => array( 'active', 'newest', 'alphabetical', 'random', 'popular' ),
'sanitize_callback' => 'sanitize_text_field',
'validate_callback' => 'rest_validate_request_arg',
);
$params['order'] = array(
'description' => __( 'Order sort attribute ascending or descending.', 'buddyboss' ),
'default' => 'desc',
'type' => 'string',
'enum' => array( 'asc', 'desc' ),
'sanitize_callback' => 'sanitize_key',
'validate_callback' => 'rest_validate_request_arg',
);
$params['orderby'] = array(
'description' => __( 'Order Groups by which attribute.', 'buddyboss' ),
'default' => 'date_created',
'type' => 'string',
'enum' => array( 'date_created', 'last_activity', 'total_member_count', 'name', 'random' ),
'sanitize_callback' => 'sanitize_key',
'validate_callback' => 'rest_validate_request_arg',
);
$params['status'] = array(
'description' => __( 'Group statuses to limit results to.', 'buddyboss' ),
'default' => array(),
'type' => 'array',
'items' => array(
'enum' => buddypress()->groups->valid_status,
'type' => 'string',
),
'sanitize_callback' => 'bp_rest_sanitize_string_list',
'validate_callback' => 'rest_validate_request_arg',
);
$params['user_id'] = array(
'description' => __( 'Pass a user_id to limit to only Groups that this user is a member of.', 'buddyboss' ),
'default' => 0,
'type' => 'integer',
'sanitize_callback' => 'absint',
'validate_callback' => 'rest_validate_request_arg',
);
$params['parent_id'] = array(
'description' => __( 'Get Groups that are children of the specified Group(s) IDs.', 'buddyboss' ),
'default' => array(),
'type' => 'array',
'items' => array( 'type' => 'integer' ),
'sanitize_callback' => 'wp_parse_id_list',
'validate_callback' => 'rest_validate_request_arg',
);
// @todo Confirm what's the proper sanitization here.
$params['meta'] = array(
'description' => __( 'Get Groups based on their meta data information.', 'buddyboss' ),
'default' => array(),
'type' => 'array',
'items' => array( 'type' => 'string' ),
'validate_callback' => 'rest_validate_request_arg',
);
$params['include'] = array(
'description' => __( 'Ensure result set includes Groups with specific IDs.', 'buddyboss' ),
'default' => array(),
'type' => 'array',
'items' => array( 'type' => 'integer' ),
'sanitize_callback' => 'wp_parse_id_list',
'validate_callback' => 'rest_validate_request_arg',
);
$params['exclude'] = array(
'description' => __( 'Ensure result set excludes Groups with specific IDs', 'buddyboss' ),
'default' => array(),
'type' => 'array',
'items' => array( 'type' => 'integer' ),
'sanitize_callback' => 'wp_parse_id_list',
'validate_callback' => 'rest_validate_request_arg',
);
$params['group_type'] = array(
'description' => __( 'Limit results set to a certain Group type.', 'buddyboss' ),
'default' => '',
'type' => 'string',
'enum' => bp_groups_get_group_types(),
'sanitize_callback' => 'bp_rest_sanitize_group_types',
'validate_callback' => 'bp_rest_validate_group_types',
);
$params['enable_forum'] = array(
'description' => __( 'Whether the Group has a forum enabled or not.', 'buddyboss' ),
'default' => false,
'type' => 'boolean',
'sanitize_callback' => 'rest_sanitize_boolean',
'validate_callback' => 'rest_validate_request_arg',
);
$params['show_hidden'] = array(
'description' => __( 'Whether results should include hidden Groups.', 'buddyboss' ),
'default' => false,
'type' => 'boolean',
'sanitize_callback' => 'rest_sanitize_boolean',
'validate_callback' => 'rest_validate_request_arg',
);
$params['scope'] = array(
'description' => __( 'Limit result set to items with a specific scope.', 'buddyboss' ),
'type' => 'string',
'default' => 'all',
'enum' => array( 'all', 'personal' ),
'sanitize_callback' => 'sanitize_text_field',
'validate_callback' => 'rest_validate_request_arg',
);
/**
* Filters the collection query params.
*
* @param array $params Query params.
*/
return apply_filters( 'bp_rest_groups_collection_params', $params );
}
Changelog
| Version | Description |
|---|---|
| 0.1.0 | Introduced. |
Questions?
We're always happy to help with code or other questions you might have! Search our developer docs, contact support, or connect with our sales team.