使用移动浏览器请求自定义 Post 类型时,Wordpress REST API 404 错误

Wordpress REST API 404 error when requesting Custom Post Type with Mobile Browser

我很困惑。我正在使用 Wordpress REST Api 通过 Ionic 构建移动应用程序。我正在尝试实现常规 post 类型和我的自定义 post 类型之一。

我可以为标准 post 类型“http://www.example.org/wp-json/wp/v2/posts”发出获取请求并且它有效。

我对我的自定义 post 类型“http://www.example.org/wp-json/wp/v2/shows”做了同样的事情,当我在我的浏览器中测试它时它工作但是当我使用 chrome 和它提供的移动模拟器时我的 404 错误:rest_no_route

知道为什么会出现此错误,尤其是仅针对自定义 post 类型吗?

默认情况下,自定义 post 类型将不可用。您需要将以下代码片段添加到主题文件的 functions.php 中:

add_action( 'init', 'custom_post_type_rest_support', 25 );
function custom_post_type_rest_support() {
  global $wp_post_types;

  $post_type_name = 'show';
  if( isset( $wp_post_types[ $post_type_name ] ) ) {
    $wp_post_types[$post_type_name]->show_in_rest = true;
    $wp_post_types[$post_type_name]->rest_base =  $post_type_name ;
    $wp_post_types[$post_type_name]->rest_controller_class = 'WP_REST_Posts_Controller';
  }
}