|
|
@@ -33,7 +33,23 @@ class Make_Sort_By extends WP_REST_Controller {
|
|
33
|
33
|
));
|
|
34
|
34
|
wp_reset_postdata();
|
|
35
|
35
|
|
|
36
|
|
- return new WP_REST_Response( $this->prepare_items_for_reponse($res), 200 );
|
|
|
36
|
+ // Get parameters from request,
|
|
|
37
|
+ // /?limit=<num>&?orderby=<str>&?order=<str>
|
|
|
38
|
+ $args = array(
|
|
|
39
|
+ 'posts_per_page' => -1,
|
|
|
40
|
+ 'page' => 1
|
|
|
41
|
+ );
|
|
|
42
|
+ $params = $request->get_params();
|
|
|
43
|
+ if(intval($params['limit']) > 0) {
|
|
|
44
|
+ $args['posts_per_page'] = intval($params['limit']);
|
|
|
45
|
+ }
|
|
|
46
|
+ if(intval($params['p']) > 1) {
|
|
|
47
|
+ $args['page'] = intval($params['p']);
|
|
|
48
|
+ }
|
|
|
49
|
+ $index_from_page = $args['page'] - 1;
|
|
|
50
|
+ $offset = array_chunk($res, $args['posts_per_page']);
|
|
|
51
|
+ $page = $offset[$index_from_page];
|
|
|
52
|
+ return new WP_REST_Response( $this->prepare_items_for_reponse($page), 200 );
|
|
37
|
53
|
}
|
|
38
|
54
|
|
|
39
|
55
|
public function by_material( $request ) {
|