У Contentful есть только PHP SDK для API доставки контента (только готов).
Мне нужно обновить запись из моего кода PHP, и я не смог найти пример кода в документации.
Я пытаюсь использовать REST API напрямую (https://www.contentful.com/developers/docs/references/content-management-api/#/reference/entries/entries-collection/create-an-entry), но возникли проблемы с отправкой правильных данных формы с полями.
У кого-нибудь есть пример кода, как я могу обновить заголовок записи, используя идентификатор записи?
Спасибо
Чтобы обновить запись в Contentful, вам необходимо предоставить действительный полезный груз JSON вместе с вашим запросом. Теперь это, конечно, зависит от того, как выглядит ваша конкретная запись и тип контента, но вот рабочий пример такой полезной нагрузки:
{
"fields": {
"title": {
"en-US": "Hello, World!"},
"body": {
"en-US": "Bacon is healthy!"}
}
}
Обратите внимание, что вам нужно вкладывать каждое значение поля в локали, которые вы хотите обновить.
Поскольку Contentful API использует оптимистичный параллелизм, вам также необходимо предоставить заголовок с последней известной версией записи. Например:
X-Contentful-Version:4
Эта полезная нагрузка с правильным заголовком версии должна быть отправлена с PUT
запросить https://api.contentful.com/spaces/<space_id>/entries/<entry_id>
Заменить <space_id>
а также <entry_id>
с вашими конкретными ценностями.
Обратите внимание, что это отличается от конечных точек доставки контента, которые живут на https://cdn.contentful.com
Также помните, что для доступа к конечным точкам управления вам нужен токен доступа к управлению. Токен доступа к доставке не подходит. Для получения дополнительной информации о том, как создать и использовать токен управления, обратитесь к официальной документации здесь: https://www.contentful.com/developers/docs/references/authentication/#the-content-management-api
Других решений пока нет …