使用 WordPress REST API POST 时,PHP 函数不消耗 JSON 输出主体变量

问题描述 投票:0回答:1

我正在尝试通过 WordPress RestAPI 调用 PHP 函数,但我一直不知道如何将 JSON 变量传递给以下函数:

    function update_user_status_to_pending_from_api (WP_REST_Request $ID){
    $userID = $ID->get_json_params();
    wp_set_object_terms( $userID, array( 'pending' ), 'user_status', false );
    clean_object_term_cache( $userID, 'user_status' );
    return $ID;
    return $userID;
    }

我想在其余 API 请求时通过 JSON 主体传递 ID 变量,并且当我通过 make.com RestAPI 模块调用它时该函数会触发,并且我在 JSON 主体中有 ID,但脚本确实如此不消耗价值。即使我将 ?ID=3 附加到 URL,脚本也会忽略该值。

我在 WP 和 PHP 中都启用了 PHP 调试,但在调用函数时不显示任何内容。当我使用curl时,我收到200的响应,但我没有收到函数中所述的$ID或$userID输出。

php wordpress-rest-api
1个回答
0
投票

经过一番详尽的研究,我发现您必须指定您希望变量使用的 JSON 值

function update_user_status_to_pending_from_api (\WP_REST_Request $request){
        $parameters = $request->get_json_params();
        $userID = $parameters["id"];
        wp_set_object_terms( $userID, array( 'pending' ), 'user_status', false );
   clean_object_term_cache( $userID, 'user_status' );
  }

我可以通过curl命令成功调用它并在字符串中传递{“id”:value}

© www.soinside.com 2019 - 2024. All rights reserved.