PluginProbe
Templately – Elementor & Gutenberg Template Library: 6500+ Free & Pro Ready Templates And Cloud! / 3.0.5
Templately – Elementor & Gutenberg Template Library: 6500+ Free & Pro Ready Templates And Cloud! v3.0.5
3.7.5 3.7.4 3.7.3 3.7.2 1-final 3.7.1 3.7.0 3.6.8 3.6.7 3.6.6 3.6.5 3.6.4 3.6.3 3.6.2 3.6.1 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.1 3.1.10 All 111 releases
templately / includes / API / Categories.php

Categories.php in Templately – Elementor & Gutenberg Template Library: 6500+ Free & Pro Ready Templates And Cloud! 3.0.5, at includes/API/Categories.php

46 lines 1.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 namespace Templately\API;
3
4 use Templately\Utils\Database;
5 use WP_REST_Request;
6
7 class Categories extends API {
8 private $endpoint = 'categories';
9
10 public function permission_check( WP_REST_Request $request ) {
11 $this->request = $request;
12 return true;
13 }
14
15 public function register_routes() {
16 $this->get( $this->endpoint, [ $this, 'get_categories' ] );
17 }
18
19 public function get_categories() {
20 /**
21 * Return if there is any cache data.
22 */
23 $types = Database::get_transient( $this->endpoint );
24 if( ! empty( $types ) ){
25 return $this->success( $types );
26 }
27
28 /** @noinspection SpellCheckingInspection */
29 $id = $this->get_param( 'id', 0, 'intval' );
30 $funcArgs = [];
31
32 if ( $id > 0 ) {
33 $funcArgs['id'] = $id;
34 }
35
36 $response = $this->http()->query( $this->endpoint, 'id, name, slug, status', $funcArgs )->post();
37 /**
38 * Caching the response in transient.
39 */
40 if( ! is_wp_error( $response ) ) {
41 Database::set_transient( $this->endpoint, $response );
42 }
43
44 return $response;
45 }
46 }