Я пытаюсь поиграть с WP API v2 и вставить сообщения от Postman.
Если я отправлю этот необработанный запрос, он создаст сообщение:
{
"title": "Test Title",
"content": "Test Content",
}
Однако я также пытаюсь добавить к этому несколько значений настраиваемых полей, и мне кажется, что я не могу заставить их работать. Этот запрос создает сообщение, но не добавляет никаких мета-полей:
{
"title": "Test Title",
"content": "Test Content",
"meta": {
"foo": "bar",
"foo2": "bar2"
}
}
Как выполнить POST мета-поля foo
и foo2
со значениями bar
и bar2
через конечную точку API https://my-site.com/wp-json/wp/v2/posts
?
Изменить: также кажется, что настраиваемые поля не извлекаются изначально в запросах GET. Я поместил этот код в плагин mu:
add_filter( 'rest_prepare_post', 'xhynk_api_post_meta', 10, 3 );
function xhynk_api_post_meta( $data, $post, $context ){
$meta = get_post_custom( $post->ID );
if( $meta ) {
$data->data['meta'] = $meta;
}
return $data;
}
Что, по крайней мере, позволяет мне просматривать его в запросе GET. Однако я все еще не могу отправить его в POST через Postman. Даже добавление "status": "publish"
приведет к публикации нового сообщения вместо черновика, как по умолчанию. Существуют ли какие-либо перехватчики или фильтры, которые я могу использовать в запросах API POST, чтобы убедиться, что добавлены настраиваемые поля?