Я обнаружил, что .NET имеет встроенный способ передачи строки JSON в Dictionary<String, Object>
через тип System.Web.Script.Serialization.JavaScriptSerializer
в сборке 3.5 System.Web.Extensions
. Используйте метод DeserializeObject(String)
.
Я наткнулся на это, сделав сообщение ajax (через jquery) типа контента «application / json» на статический метод .NET-страницы и увидел, что метод (который имел единственный параметр типа Object
), магически получивший этот Словарь.
Ваш блочный код выглядит хорошо.
Возможно, проблема связана с пользовательским типом записи. Когда вы регистрируете его, вы должны убедиться, что он поддерживает настраиваемые поля:
register_post_type(
'post-type',
[
// options...
'supports' => [
// ...
'custom-fields',
],
]
);
Этот последний шаг гарантирует, что ваш пользовательский тип записи предоставляет мета-свойство из REST API, который Гутенберг использует для просмотреть / обновить данные.
(взято из https://github.com/WordPress/gutenberg/issues/5622#issuecomment-375362438 )