wordpress - WP-REST API 的自定义路由端点给出 "code": "rest_no_route", 错误

标签 wordpress wp-api

我正在关注 this创建自定义端点到 WP-API 的教程。

我总是在点击 时遇到此错误/wp-json/custom-plugin/v2/get-all-post-ids/ postman 去测试 :

{
    "code": "rest_no_route",
    "message": "No route was found matching
    the URL and request method ", 
    "data": {
        "status": 404
    }
}

我在/plugins/custom-plugin/目录中创建了一个 custom-plugin.php 文件。
<?php
    if ( ! defined( 'ABSPATH' ) ) exit;

    add_action( 'rest_api_init', 'dt_register_api_hooks' );

    function dt_register_api_hooks() {    

        register_rest_route( 'custom-plugin/v2', '/get-all-post-ids/', array(
            'methods' => 'GET',
            'callback' => 'dt_get_all_post_ids',
            ) 
            );
    }
    // Return all post IDs
    function dt_get_all_post_ids() {
        if ( false === ( $all_post_ids = get_transient( 'dt_all_post_ids' ) ) ) {
            $all_post_ids = get_posts( array(
                'numberposts' => -1,
                'post_type'   => 'post',
                'fields'      => 'ids',
            ) );
            // cache for 2 hours
            set_transient( 'dt_all_post_ids', $all_post_ids, 60*60*2 );
        }
        return $all_post_ids;
    }
?>

最佳答案

确保您回电 add_action( 'rest_api_init', 'dt_register_api_hooks' );正在运行。
就我而言,我的回调没有被调用,因为我使用的是 add_action('rest_api_init', ...)为时已晚;行动已经开始。就像,我调用 register_rest_route()甚至从未发生过。

关于wordpress - WP-REST API 的自定义路由端点给出 "code": "rest_no_route", 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36645019/

相关文章:

wordpress - 将联系表 7 与 React 结合使用

wordpress - 无需身份验证即可使用 WP-REST 获取帖子

javascript - Gravity Forms & ReactJS - 将表单加载到模态并提交

wordpress - 我应该使用 wp_enqueue_script() 将外部脚本排入队列吗?

php - 带有 wp-load 的 Wordpress 动态 CSS

wordpress - 在后期编辑/保存时跟踪 WordPress 更改

wordpress - 通过 WP REST API 使用联系表 7

Javascript 在页面重新加载时运行

php - 如何在 wordpress 插件中保存选择选项下拉列表

WordPress : Using WP REST api v2 save post data for contact-form-7