Одна модель страницы для редактора и интеграции
Когда материалы редактируют люди и внешние инструменты, две независимые модели данных усложняют поддержку. В проекте нужен был единый способ описывать структуру страницы и проверять её перед сохранением.
Технологии этого решения
Собственная разработка внутри платформы магазина.
Drupal 11: данные и интерфейсы
Каталог, заказы и процессы магазина
Сервисы и бизнес-логика
Страница собирается из блоков
Редактор работает с предусмотренными типами блоков: текстом, изображениями, галереей, видео, FAQ, подборками товаров и кнопками. Порядок блоков задаёт структуру материала без отдельного шаблона для каждой страницы.
Редактору важно управлять порядком и составом содержимого, а интеграции — передавать ту же структуру в предсказуемом формате. Общая модель снижает необходимость отдельно поддерживать правила для каждого канала ввода.
Общий сервис для формы и API
Ручное редактирование и программная запись используют общий сервис обработки блоков. Поэтому проверка и сохранение опираются на один путь, а не на две несвязанные реализации.
При передаче блока проверяются его тип и необходимые данные. Ошибки возвращаются инициатору запроса, чтобы неверная структура не воспринималась как успешно подготовленная страница.

Условный пример страницы
Тематическая страница состоит из введения, изображения, FAQ и подборки товаров. Внешняя система может передать структуру одним запросом; при ошибке в данных API возвращает информацию для исправления. Пример не содержит содержимого клиента.
Права доступа зависят от типа материала и конкретной сущности. Поведение сохранения и ревизий определяется типом страницы; оно не объявляется одинаковым для любого содержимого Drupal.
Права, черновики и границы API
Доступ проверяется по разрешениям для типов материалов и обычным правам Drupal на сущность. Поддерживаемая тематическая страница по умолчанию создаётся черновиком. API блоков не заменяет отдельное управление метатегами и не создаёт произвольные разделы каталога.
Результат для контентной команды
Редакторы и интеграции получили общую структуру контента и проверяемый процесс сохранения. Подход подходит для проектов, где ручная работа и внешние системы должны работать с одними страницами.
Подробнее об услугах: разработка интернет-магазинов и разработка систем на Drupal.
Частые вопросы
Можно ли редактировать одну страницу вручную и через API?
Да, для поддерживаемых типов материалов оба пути используют общий сервис блоков.
Как API проверяет структуру блоков и доступ?
Применяются проверки формата блоков, права для типа цели и доступ Drupal к конкретной сущности.
Можно ли создавать материалы сначала в черновике?
Да, в предусмотренном сценарии тематическая страница создаётся черновиком по умолчанию.
Чем API блоков отличается от API метатегов?
Первый управляет структурой содержимого, метатеги обрабатываются отдельным механизмом.