Из руководства похоже, что чтение и запись настраиваемых полей не поддерживаются из коробки.
register_meta используется для внесения в белый список существующего настраиваемого мета-значения для доступа через REST API. Если для параметра show_in_rest мета-поля установлено значение true, значение этого поля будет отображаться в .meta-ключе в ответе конечной точки, и WordPress будет обрабатывать настройку обратных вызовов для чтения и записи в этот мета-ключ .
Итак, вам нужно добавить php, чтобы зарегистрировать мета-ключ, и тогда он будет доступен для чтения и записи.
На той же странице есть этот пример кода:
<?php
// The object type. For custom post types, this is 'post';
// for custom comment types, this is 'comment'. For user meta,
// this is 'user'.
$object_type = 'post';
$meta_args = array( // Validate and sanitize the meta value.
// Note: currently (4.7) one of 'string', 'boolean', 'integer',
// 'number' must be used as 'type'. The default is 'string'.
'type' => 'string',
// Shown in the schema for the meta key.
'description' => 'A meta key associated with a string meta value.',
// Return a single value of the type.
'single' => true,
// Show in the WP REST API response. Default: false.
'show_in_rest' => true,
);
register_meta( $object_type, 'my_meta_key', $meta_args );
Вы можете поместить это на свою theme_functions
страницу. См. Внешний вид> Редактор тем.
Then in your code you send it defining the meta
property and using a name value pair; the name of the key and it's value.
var results = await fetch(url, {
method: "POST",
headers:{
'Content-Type': 'application/json',
'accept': 'application/json',
'Authorization': 'Bearer '+ token
},
body: JSON.stringify({
title: pageTitle,
content: markupOutput,
status: 'publish',
meta: {
my_meta_key: "test"
}
})
})
Example Code:
https://developer.wordpress.org/rest-api/extending-the-rest-api/modifying-responses/#read -and-write-a-post-meta-field-in-post-answers
Документация: https://developer.wordpress.org/rest-api/extending-the-rest-api/modifying-responses/#using -register_rest_field-vs-register_meta