Wordpress WP“休息”请求:如何添加“休息”_嵌入;请求参数

Wordpress WP“休息”请求:如何添加“休息”_嵌入;请求参数,wordpress,wordpress-rest-api,Wordpress,Wordpress Rest Api,我将此函数添加到我的wordpress REST API中以拥有自定义端点 function getSettimanaEventi(){ $request = new WP_REST_Request( 'GET', '/wp/v2/tribe_events' ); $request['_embed'] = '1'; $request['filter[meta_query][0][key]'] = '_EventStartDate'; $request['filter[meta_query][0]

我将此函数添加到我的wordpress REST API中以拥有自定义端点

function getSettimanaEventi(){
$request = new WP_REST_Request( 'GET', '/wp/v2/tribe_events' );
$request['_embed'] = '1';
$request['filter[meta_query][0][key]'] = '_EventStartDate';
$request['filter[meta_query][0][value][0]'] = '2017-07-03 00:00:00';
$request['filter[meta_query][0][value][1]'] = '2017-07-09 00:00:00';
$request['filter[meta_query][0][compare]'] = 'BETWEEN';
$request['filter[meta_query][0][type]'] = 'DATE';


$response = rest_do_request( $request );
return $response;
我得到了回复,但没有嵌入内容

我知道带前导“\”的参数是私有的,但我需要嵌入内容。
我该怎么做?

我找到的唯一方法是将“\u embed”参数添加到url(例如,当您从Postman调用它时)并将其从请求参数中删除(更新-这似乎不起作用。如果我弄明白了,我将进行更新。)

您必须在超级全局中设置它,如下所示:

function getSettimanaEventi () {
  // Set super global to simulate request param
  $_GET['_embed'] = 1;
  $request = new WP_REST_Request( 'GET', '/wp/v2/tribe_events' );
  $request['filter[meta_query][0][key]'] = '_EventStartDate';
  $request['filter[meta_query][0][value][0]'] = '2017-07-03 00:00:00';
  $request['filter[meta_query][0][value][1]'] = '2017-07-09 00:00:00';
  $request['filter[meta_query][0][compare]'] = 'BETWEEN';
  $request['filter[meta_query][0][type]'] = 'DATE';
  $response = rest_do_request( $request );
  // cleanup after
  unset($_GET['_embed']);
  return $response;
}
我在WP-API的票据中找到了以下信息:

这对我很合适

global $wp_rest_server;
$request = new WP_Rest_Request('GET', '/wp/v2/posts');
$response = rest_do_request($request);
$response = $wp_rest_server->response_to_data($response, true);
这是在邮递员中,这是在functions.php函数getSettimanaEventi(){$request=new WP_REST_request('GET','/WP/v2/tribe_events');$request['filter[meta_query][0][key]='u EventStartDate';$request['filter[meta_query][0][value][0]]='2017-07-03 00:00:00';$request['filter[meta u query 0][0][0][value][1]='2017-07-09 00:00:00$request['filter[meta_query][0][compare]]='BETWEEN';$request['filter[meta_query][0][type]']='DATE';$response=rest_do_request($request);返回$response;