I get a rest_no_route
error if I try to use a custom endpoint I've created. Is there any solution? I'm creating my theme routes inside a plugin class, but I don't think this is a problem.
I'm using axios to get the data on front-end.
class theme_Rest_Routes extends WP_REST_Controller{
public static function init()
{
add_action( 'rest_api_init', array( __CLASS__, 'register_routes') );
}
public function register_routes()
{
register_rest_route( 'theme/v1', '/menu/', array(
'methods' => 'GET',
'callback' => array(__CLASS__, 'theme_rest_menu'))
);
}
public function theme_rest_menu( $request )
{
return wp_get_nav_menu_items('menu');
}
}
theme_Rest_Routes::init();
WP_REST_Controller
, in fact in this situation it is either dead weight, or, causing harm as you don't use any of the Rest controller class. In both your question, and the answer below, you can deleteextends WP_REST_Controller
and it will work the same