PluginProbe ʕ •ᴥ•ʔ
JetFormBuilder — Dynamic Blocks Form Builder / trunk
JetFormBuilder — Dynamic Blocks Form Builder vtrunk
3.6.3.1 3.6.3 3.6.2.2 3.6.2.1 3.6.2 3.6.1.1 3.6.1 3.6.0.1 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.1.0 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.2.0 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6 1.2.7 1.3.0 1.3.1 1.3.2 1.3.3 1.4.0 1.4.1 1.4.2 1.4.3 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.1.0 2.1.1 2.1.10 2.1.11 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 3.0.0 3.0.0.1 3.0.0.2 3.0.0.3 3.0.1 3.0.1.1 3.0.2 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.0.1 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 3.2.0 3.2.1 3.2.2 3.2.3 3.3.0 3.3.1 3.3.2 3.3.3 3.3.3.1 3.3.4 3.3.4.1 3.3.4.2 3.4.0 3.4.1 3.4.2 3.4.3 3.4.4 3.4.5 3.4.5.1 3.4.5.2 3.4.6 3.4.7 3.4.7.1 3.5.0 3.5.1 3.5.1.1 3.5.1.2 3.5.2 3.5.2.1 3.5.3 3.5.4 3.5.5 3.5.6 3.5.6.1 3.5.6.2 3.5.6.3 3.6.0
jetformbuilder / components / rest-api / rest-api-controller-base.php
jetformbuilder / components / rest-api Last commit date
interfaces 1 year ago traits 2 years ago dynamic-rest-url-trait.php 2 years ago rest-api-controller-base.php 2 years ago rest-api-endpoint-base.php 7 months ago rest-api-private-endpoint-base.php 7 months ago rest-endpoint.php 2 years ago rest-response.php 2 years ago route.php 1 year ago
rest-api-controller-base.php
51 lines
1 <?php
2
3
4 namespace JFB_Components\Rest_Api;
5
6 // If this file is called directly, abort.
7 if ( ! defined( 'WPINC' ) ) {
8 die;
9 }
10
11 abstract class Rest_Api_Controller_Base {
12
13 public function rest_api_init() {
14 add_action( 'rest_api_init', array( $this, 'register_routes' ) );
15 }
16
17 /**
18 * @return Rest_Api_Endpoint_Base[]
19 */
20 abstract public function routes(): array;
21
22 public function register_routes() {
23 foreach ( $this->routes() as $route ) {
24 $endpoint_args = $route->get_overridden_args()
25 ?: array( // phpcs:ignore Universal.Operators.DisallowShortTernary.Found
26 'methods' => $route::get_methods(),
27 'callback' => array( $route, 'run_callback' ),
28 'permission_callback' => array( $route, 'check_permission' ),
29 'args' => $route->get_common_args(),
30 );
31
32 $result = register_rest_route(
33 $route::get_namespace(),
34 "/{$route::get_rest_base()}",
35 $endpoint_args,
36 $route->get_override()
37 );
38
39 if ( ! $result ) {
40 _doing_it_wrong(
41 __METHOD__,
42 // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
43 "Error on register REST API route: {$route::get_namespace()}/{$route::get_rest_base()}",
44 '1.4.0'
45 );
46 }
47 }
48 }
49
50 }
51