Таблица block_content_type
Таблица block_content_type является центральным хранилищем для определения типов настраиваемых блоков контента в Drupal. Каждый тип блока определяет структуру и поведение определённого вида блоков, которые могут быть созданы через административный интерфейс.
Поля
| Поле | Тип данных | Описание |
|---|---|---|
id |
varchar(32) |
Машинное имя типа блока контента. Уникальный идентификатор. |
label |
varchar(255) |
Человекочитаемое название типа блока контента, которое отображается в интерфейсе администратора. |
description |
text |
Описание типа блока контента, поясняющее его назначение и использование. |
revision |
int |
Флаг, указывающий, включено ли ведение ревизий для данного типа блока. 1 - ревизии включены, 0 - выключены.
|
icon |
varchar(255) |
Путь к файлу иконки, ассоциированной с данным типом блока контента. |
Как это работает
Типы блоков контента являются фундаментальной концепцией в Drupal для создания повторно используемых настраиваемых блоков. Каждый тип блока определяет собственный набор полей (через Field API), которые могут быть добавлены к блокам этого типа.
Когда создается новый тип блока контента (например, basic, hero_banner, cta_button), в таблицу block_content_type добавляется новая запись с его машинным именем, меткой и описанием. Эта запись служит точкой входа для системы, чтобы знать, какие типы блоков доступны.
Поле revision определяет, будет ли система сохранять историю изменений для каждого отдельного блока этого типа. Это полезно для отслеживания, кто и когда вносил изменения, и для возможности отката к предыдущим версиям.
Типы блоков контента тесно интегрированы с другими системами Drupal:
- С
block_content_field_dataи другими таблицами полей для хранения данных. - С системой размещения блоков для отображения на страницах сайта.
- С системой прав доступа для контроля над тем, кто может создавать, редактировать и удалять блоки определённых типов.
Пример SQL-запроса
Получить список всех доступных типов блоков контента можно следующим запросом:
SELECT id, label, description, revision
FROM block_content_type
ORDER BY label;
Проверить, включено ли ведение ревизий для конкретного типа блока:
SELECT id, label, revision
FROM block_content_type
WHERE id = 'basic';
Смотрите также
-
таблицу
block_content,
которая хранит основные данные о созданных блоках -
таблицу
block_content_field_data,
которая хранит данные полей для блоков контента -
таблицу
block_content_revision,
которая хранит ревизии блоков контента -
таблицу
block,
которая управляет размещением блоков в регионах темы