Changeset 55132 for trunk/src/wp-includes/rest-api/endpoints/class-wp-rest-pattern-directory-controller.php
- Timestamp:
- 01/24/2023 04:52:42 PM (2 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/wp-includes/rest-api/endpoints/class-wp-rest-pattern-directory-controller.php
r53665 r55132 82 82 * @since 5.8.0 83 83 * @since 6.0.0 Added 'slug' to request. 84 * @since 6.2.0 Added 'per_page', 'page', 'offset', 'order', and 'orderby' to request. 84 85 * 85 86 * @param WP_REST_Request $request Full details about the request. … … 94 95 require ABSPATH . WPINC . '/version.php'; 95 96 96 $query_args = array( 97 'locale' => get_user_locale(), 98 'wp-version' => $wp_version, 99 ); 100 101 $category_id = $request['category']; 102 $keyword_id = $request['keyword']; 103 $search_term = $request['search']; 104 $slug = $request['slug']; 105 106 if ( $category_id ) { 107 $query_args['pattern-categories'] = $category_id; 108 } 109 110 if ( $keyword_id ) { 111 $query_args['pattern-keywords'] = $keyword_id; 112 } 113 114 if ( $search_term ) { 115 $query_args['search'] = $search_term; 116 } 117 118 if ( $slug ) { 119 $query_args['slug'] = $slug; 120 } 97 $valid_query_args = array( 98 'offset' => true, 99 'order' => true, 100 'orderby' => true, 101 'page' => true, 102 'per_page' => true, 103 'search' => true, 104 'slug' => true, 105 ); 106 $query_args = array_intersect_key( $request->get_params(), $valid_query_args ); 107 108 $query_args['locale'] = get_user_locale(); 109 $query_args['wp-version'] = $wp_version; // phpcs:ignore VariableAnalysis.CodeAnalysis.VariableAnalysis.UndefinedVariable -- it's defined in `version.php` above. 110 $query_args['pattern-categories'] = isset( $request['category'] ) ? $request['category'] : false; 111 $query_args['pattern-keywords'] = isset( $request['keyword'] ) ? $request['keyword'] : false; 112 113 $query_args = array_filter( $query_args ); 121 114 122 115 $transient_key = $this->get_transient_key( $query_args ); … … 304 297 * 305 298 * @since 5.8.0 299 * @since 6.2.0 Added 'per_page', 'page', 'offset', 'order', and 'orderby' to request. 306 300 * 307 301 * @return array Collection parameters. … … 310 304 $query_params = parent::get_collection_params(); 311 305 312 // Pagination is not supported. 313 unset( $query_params['page'] ); 314 unset( $query_params['per_page'] ); 315 306 $query_params['per_page']['default'] = 100; 316 307 $query_params['search']['minLength'] = 1; 317 308 $query_params['context']['default'] = 'view'; … … 332 323 'description' => __( 'Limit results to those matching a pattern (slug).' ), 333 324 'type' => 'array', 325 ); 326 327 $query_params['offset'] = array( 328 'description' => __( 'Offset the result set by a specific number of items.' ), 329 'type' => 'integer', 330 ); 331 332 $query_params['order'] = array( 333 'description' => __( 'Order sort attribute ascending or descending.' ), 334 'type' => 'string', 335 'default' => 'desc', 336 'enum' => array( 'asc', 'desc' ), 337 ); 338 339 $query_params['orderby'] = array( 340 'description' => __( 'Sort collection by post attribute.' ), 341 'type' => 'string', 342 'default' => 'date', 343 'enum' => array( 344 'author', 345 'date', 346 'id', 347 'include', 348 'modified', 349 'parent', 350 'relevance', 351 'slug', 352 'include_slugs', 353 'title', 354 'favorite_count', 355 ), 334 356 ); 335 357
Note: See TracChangeset
for help on using the changeset viewer.