Я создал модуль с несколькими страницами администрирования. Одна из этих страниц — страница создания блока. При создании блока имя блока сохраняется в базе данных. Метод block build() вернет массив темы, где файл ветки будет использовать переменную для построения разметки.
На другой странице администратора будет место, где пользователь прикрепляет блок к определенному типу данных. Наряду с этим указаны идентификаторы узлов, на которых могут отображаться эти данные.
Я сделал все, кроме того, как отправить данные в блок, если текущий узел находится в базе данных и связан с блоком/данными.
Как это делается в Drupal 8|9? Это предварительная обработка?
И как мне отправить данные в правильный блок для отображения?
Вот как я себе это представлял. Пожалуйста, поправьте меня, если я ошибаюсь.
- Обнаружить NID в модуле (предварительно обработать???)
- Запросите базу данных, чтобы узнать, содержит ли какая-либо из записей соответствующий NID.
- Если есть совпадение, то найдите совпадающие данные для NID и сохраните их в переменной
- Используйте имя блока, которое прикреплено к соответствующему набору NID/данных, и отправьте
данные в этот блок для рендеринга.
Этот модуль почти готов. Мне просто нужно знать, как это сделать. Спасибо.