WP_REST_Menu_Items_Controller::prepare_items_query( array $prepared_args = array(), WP_REST_Request $request = null ): array
Determines the allowed query_vars for a get_items() response and prepares them for WP_Query.
Parameters
-
$prepared_args
array Optional -
Prepared WP_Query arguments.
Default:
array()
-
$request
WP_REST_Request Optional -
Full details about the request.
Default:
null
Return
array Items query arguments.
Source
File: wp-includes/rest-api/endpoints/class-wp-rest-menu-items-controller.php
.
View all references
protected function prepare_items_query( $prepared_args = array(), $request = null ) {
$query_args = parent::prepare_items_query( $prepared_args, $request );
// Map to proper WP_Query orderby param.
if ( isset( $query_args['orderby'], $request['orderby'] ) ) {
$orderby_mappings = array(
'id' => 'ID',
'include' => 'post__in',
'slug' => 'post_name',
'include_slugs' => 'post_name__in',
'menu_order' => 'menu_order',
);
if ( isset( $orderby_mappings[ $request['orderby'] ] ) ) {
$query_args['orderby'] = $orderby_mappings[ $request['orderby'] ];
}
}
$query_args['update_menu_item_cache'] = true;
return $query_args;
}
Changelog
Version | Description |
---|---|
5.9.0 | Introduced. |