'GET', 'callback' => $callback, 'permission_callback' => [$this, 'checkPermission'], ]); } /** * The post handler * * @param string $namespace - The api name space. * @param string $endpoint - The endpoint. * @param string $callback - The callback to run. * * @return void */ public function postHandler($namespace, $endpoint, $callback) { \register_rest_route($namespace, $endpoint, [ 'methods' => 'POST', 'callback' => $callback, 'permission_callback' => [$this, 'checkPermission'], ]); } /** * The caller * * @param string $name - The name of the method to call. * @param array $arguments - The arguments to pass in. * * @return mixed */ public static function __callStatic($name, array $arguments) { $name = "{$name}Handler"; if (is_null(self::$instance)) { self::$instance = new static(); } $r = self::$instance; return $r->$name(Config::$slug . '/' . Config::$apiVersion, ...$arguments); } }