webdevqa.jp.net

WP-APIのカスタムルートは "rest_no_route"値を与える

私は これ WP-APIへのカスタムエンドポイントを作成するためのチュートリアルをフォローしています。

テストするために /wp-json/custom-plugin/v2/get-all-post-ids/ on 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;
    }

?>

どうすればこの問題を解決できるかをご案内ください。

ありがとう。

3
Divyanshu Jimmy

これに対する答えがあるかもしれません。

コードにPOSTがありましたが、ブラウザでURLを見ようとしていました。

指定した方法を使用していることを確認してください。

1
phpwebdev