Determines the allowed query_vars for a get_items() response and prepares
them for WP_Query.
protected prepare_items_query ( array $prepared_args = [], WP_REST_Request $request = null ) : array | ||
$prepared_args | array | Optional. Prepared WP_Query arguments. Default empty array. |
$request | WP_REST_Request | Optional. Full details about the request. |
return | array | Items query arguments. |
/** * Determine the allowed query_vars for a get_items() response and * prepare for WP_Query. * * @param array $prepared_args * @return array $query_args */ protected function prepare_items_query($prepared_args = array()) { $query_args = parent::prepare_items_query($prepared_args); if (empty($query_args['post_status']) || !in_array($query_args['post_status'], array('inherit', 'private', 'trash'))) { $query_args['post_status'] = 'inherit'; } return $query_args; }
/** * Determines the allowed query_vars for a get_items() response and * prepares for WP_Query. * * @since 4.7.0 * @access protected * * @param array $prepared_args Optional. Array of prepared arguments. Default empty array. * @param WP_REST_Request $request Optional. Request to prepare items for. * @return array Array of query arguments. */ protected function prepare_items_query($prepared_args = array(), $request = null) { $query_args = parent::prepare_items_query($prepared_args, $request); if (empty($query_args['post_status'])) { $query_args['post_status'] = 'inherit'; } $media_types = $this->get_media_types(); if (!empty($request['media_type']) && isset($media_types[$request['media_type']])) { $query_args['post_mime_type'] = $media_types[$request['media_type']]; } if (!empty($request['mime_type'])) { $parts = explode('/', $request['mime_type']); if (isset($media_types[$parts[0]]) && in_array($request['mime_type'], $media_types[$parts[0]], true)) { $query_args['post_mime_type'] = $request['mime_type']; } } return $query_args; }
/** * Determines the allowed query_vars for a get_items() response and * prepares for WP_Query. * * @since 4.7.0 * @access protected * * @param array $prepared_args Optional. Array of prepared arguments. Default empty array. * @param WP_REST_Request $request Optional. Request to prepare items for. * @return array Array of query arguments. */ protected function prepare_items_query($prepared_args = array(), $request = null) { $query_args = parent::prepare_items_query($prepared_args, $request); if (empty($query_args['post_status'])) { $query_args['post_status'] = 'inherit'; } $media_types = $this->get_media_types(); if (!empty($request['media_type']) && isset($media_types[$request['media_type']])) { $query_args['post_mime_type'] = $media_types[$request['media_type']]; } if (!empty($request['mime_type'])) { $parts = explode('/', $request['mime_type']); if (isset($media_types[$parts[0]]) && in_array($request['mime_type'], $media_types[$parts[0]], true)) { $query_args['post_mime_type'] = $request['mime_type']; } } // Filter query clauses to include filenames. if (isset($query_args['s'])) { add_filter('posts_clauses', '_filter_query_attachment_filenames'); } return $query_args; }