2017-05-29 65 views
0

我添加了這個功能,我的wordpress REST API有一個自定義端點WP_REST_REQUEST:如何「_embed」添加到請求參數

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; 

我得到的迴應,但也沒有嵌入的內容。

我知道具有前導'_'的參數是私人的,但我需要嵌入的內容。 我該怎麼辦?

回答

0

我發現的唯一方法是將「_embed」參數添加到URL(當你從郵差例如稱呼它),並從請求參數

+0

得到實施例在代碼 – deemi

+0

這郵差 http://prntscr.com/fdd12v 而這在functions.php的 功能getSettimanaEventi(){$ 請求=新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); 返回$ response; –

+0

對不起,沒有格式化更好的評論 –

0

(更新刪除 - 這似乎並沒有。可工作,如果我弄明白我會更新)

你必須將其在全球超級像這樣:

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這個信息: https://github.com/WP-API/WP-API/issues/2857

相關問題