WP-API自定义发布类型json_no_route

时间:2014-11-10 作者:Stephan Grobler

我已经创建了一个自定义post类型并扩展了文档中的WP\\u JSON\\u CustomPostType类,当我转到WP-JSON/时,我可以看到自定义类型,但只要我转到WP-JSON/就会发现这个错误,任何帮助都会很好。PS:我是插件开发新手。

register_post_type(\'quiz\',
    array(
        \'labels\' => array(
            \'name\' => __( \'Quizes\' ),
            \'singular_name\' => __(\'Quiz\'),
        ),
        \'public\' => true,
        \'has_archive\' =>true,
        \'show_ui\' =>true,
        \'show_in_menu\' => true,
        \'query_var\' => true,
        \'hierarchical\' => false,
        \'capability_type\' => \'post\',
    )
);


public function quizno_api_init($server)
{
     global $quizno_api_quiz;

     $quizno_api_quiz = new QN_API_Quiz($server);
     $quizno_api_quiz->register_filters();
}



/**
* wp-api extension
*/
class QN_API_Quiz extends WP_JSON_CustomPostType
{
    protected $base = \'quizes\';
    protected $type = \'quiz\';

    public function register_routes($routes)
    {
            $routes = parent::register_routes($routes);
            return $routes;
    }

}

1 个回复
SO网友:John Bernardsson

我认为您的代码中缺少的是对plugin init函数的“add\\u action”调用,因此在wp_json_server_before_serve 钩应该是这样的(注意最后一行):

function quizno_api_init($server)
{
     global $quizno_api_quiz;

     $quizno_api_quiz = new QN_API_Quiz($server);
     $quizno_api_quiz->register_filters();
}
add_action( \'wp_json_server_before_serve\', \'quizno_api_init\' );

结束

相关推荐

无法在多站点上查看网络plugins.php或upgrade-core.php

我有一个有5或6个站点的网络。在网络管理面板中,我可以看到除/wp admin/network/plugins之外的所有页面。php页面和/wp admin/network/upgrade核心。php页面。查看文件夹结构时,这两个文件都存在,但由于某些原因,它们不会加载。非常感谢您的帮助。