PluginProbe ʕ •ᴥ•ʔ
Wp Social Login and Register Social Counter / trunk
Wp Social Login and Register Social Counter vtrunk
trunk 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 1.3.0 1.3.1 1.3.10 1.3.11 1.3.2 1.3.3 1.3.4 1.3.6 1.3.8 1.3.9 1.4.0 1.4.1 1.4.2 1.4.4 1.4.5 1.4.6 1.4.8 1.4.9 1.5.0 1.6.0 1.6.1 1.7.0 1.7.1 1.7.2 1.7.3 1.7.4 1.8.0 1.8.1 1.8.2 1.8.3 1.8.5 1.8.6 1.9.0 2.0.0 2.1.0 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.8 2.2.9 3.0.0 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.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
wp-social / base / api.php
wp-social / base Last commit date
api.php 5 years ago
api.php
43 lines
1 <?php
2
3 namespace WP_Social\Base;
4
5 defined('ABSPATH') || exit;
6
7 abstract class Api {
8
9 public $prefix = '';
10 public $param = '';
11 public $request = null;
12
13
14 abstract public function config();
15
16
17 public function __construct() {
18 $this->config();
19 $this->init();
20 }
21
22
23 public function init() {
24 add_action('rest_api_init', function() {
25 register_rest_route(untrailingslashit('wslu/v1/' . $this->prefix), '/(?P<action>\w+)/' . ltrim($this->param, '/'), array(
26 'methods' => \WP_REST_Server::ALLMETHODS,
27 'callback' => [$this, 'action'],
28 'permission_callback' => '__return_true',
29 ));
30 });
31 }
32
33
34 public function action($request) {
35 $this->request = $request;
36 $action_class = strtolower($this->request->get_method()) . '_' . sanitize_key($this->request['action']);
37
38 if(method_exists($this, $action_class)) {
39 return $this->{$action_class}();
40 }
41 }
42 }
43