WP API v2로 플레이하고 포스트 만의 게시물을 삽입하려고합니다. 나는이 원시 요청을 게시 할 경우WP API v2를 통해 포스트 메타 필드 추가
, 그냥 좋은 게시물을 작성
{
"title": "Test Title",
"content": "Test Content",
}
을하지만, 나뿐만 아니라이 일부 사용자 정의 필드 값을 추가하기 위해 노력하고있어, 내가 얻을 수없는 것 그들에게 일하도록. 이 요청은 게시물을 만들지 만 어떤 메타 필드를 추가하지 않습니다
{
"title": "Test Title",
"content": "Test Content",
"meta": {
"foo": "bar",
"foo2": "bar2"
}
}
가 어떻게 메타 필드 foo
그 값은 API 엔드 포인트 https://my-site.com/wp-json/wp/v2/posts
통해 bar
및 bar2
와 foo2
를 기록하나요?
편집 : 사용자 지정 필드가 GET 요청에서 기본적으로 가져 오지 않는 것처럼 보입니다. 나는이 코드를 mu-plugin에 넣었다.
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를받을 수 없다. "status": "publish"
을 추가하더라도 새 게시물이 기본적으로 초안이 아닌 게시되도록합니다. 사용자 정의 필드가 추가되었는지 API POST 요청에 사용할 수있는 후크 또는 필터가 있습니까?
당신, 내 친구와 함께 할 수 있고, 삽입 및 업데이트에 METAS을 처리하기 위해, 절대 생명의 은인이다! 나는 이것에 2 일 동안 나의 머리를 끌어 당기고 있었다! 그러나'\ WP_Post $ post'의 목적이 함수 선언에 무엇인지 물어볼 수 있습니까? 나는 그것을 다음과 같이 시도해 보았다 :'add_action ('rest_insert_post', function ($ post, $ request, $ creating) {'그 조각이 당신의 대답을 위해 무엇을 원했는지 궁금하다면? – Xhynk
그것은 http : // 타입 선언이다. /php.net/functions.arguments#functions.arguments.type-declaration – mmm
아, 설명해 주셔서 감사합니다! – Xhynk