簡體   English   中英

使用WordPress REST API獲取多個帖子元

[英]Get multiple post meta with WordPress REST API

function my_rest_prepare_post( $data, $post, $request ) {
   $_data = $data->data;
   $_data[$field] = get_post_meta( $post->ID, 'my_custom_field_key', true );
   $data->data = $_data;
   return $data;
}
add_filter( 'rest_prepare_post', 'my_rest_prepare_post', 10, 3 );

上面是我用來在API中包含元值的代碼。 但是我想包含多個元,我試圖在my_custom_field_key添加my_custom_field_key分隔的不同元鍵,但是我只顯示了第一個鍵的值。

第二個問題是它僅顯示元值,如何在JSON響應中包含key:value?

//returns an array of metadata get_metadata('post', $post->ID)

https://codex.wordpress.org/Function_Reference/get_metadata

在類似的問題中修改我接受的答案,我已經在本地站點中測試了工作功能。

add_action( 'rest_api_init', 'add_custom_fields' );
function add_custom_fields() {
register_rest_field(
'post', 
'custom_fields', //New Field Name in JSON RESPONSEs
array(
'get_callback'    => 'get_custom_fields', // custom function name 
'update_callback' => null,
'schema'          => null,
 )
);
}

然后定義您的函數以獲取自定義字段

function get_custom_fields( $object, $field_name, $request ) {
return get_post_meta( $object['id'] );
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM