Products
GG网络技术分享 2025-03-18 16:12 6
Wordpress isn\'t throwing any errors, even in debug mode, but none of my custom routes are showing up. I have the following method that loads in the data.
I have the following rest_api_init
hook inside a class constructor.
add_action( \'rest_api_init\', [$this, \'addApiRoutes\'] );
That calls this method.
public function addApiRoutes() {register_rest_route( $this->namespace, \'/logout\', [
\'methods\' => WP_REST_Server::READABLE,
\'callback\' => [ $this, \'logout\' ],
] );
return $this;
}
public function logout() {
wp_logout();
wp_redirect(\'/\');
exit;
}
If I do a die(__LINE__ . __FILE__)
, I can see that the method (addApiRoutes) is being invoked. But when I check the route, I get a 404. When I visit the wp-json
url, the route doesn\'t show up either, nor the namespace.
How do you debug this? I also checked the deprecated calls
section of Wordpress, but no errors are showing up there either.
So, here\'s the answer. I was using /index.php/wp-json/wp/v2/{customRoute}
to do the lookup, which gave me a route not found each time. The actual route is /index.php/wp-json/{customRoutes}
. The wp/v2
stuff is apparently only for internal stuff Wordpress uses, as far as I can tell.
Demand feedback