hooks(); } public function hooks() { //ray('HOOKS'); add_action( 'rest_api_init', array( $this, 'register_endpoint_eloquent' ) ); } public function register_endpoint_eloquent() { // Load routes $routes = require EVAVEL_FRAMEWORK . 'routes/routes.php'; foreach($routes as $route) { register_rest_route( static::$namespace, $route->getRoute(), array( array( 'methods' => $route->method, 'callback' => array( $this, 'resolve_route' ), 'permission_callback' => array( $this, 'permission_callback' ), //'permission_callback' => __return_true, 'args' => array( 'controller' => array( 'default' => $route->getController() ), 'context' => array( 'default' => $route->getContext() ) ), ), ) ); } } public function resolve_route($WP_request) { return (new ResolveRoute($WP_request))->handle(); } public function permission_callback() { return true; } }