Таблица shortcut_field_data
Таблица shortcut_field_data является таблицей данных для базовой таблицы shortcut в Drupal. Она хранит переводимые поля сущности "ярлык" (закладка), главным образом его название. Эта таблица позволяет управлять многоязычными ярлыками, если на сайте включена соответствующая функциональность.
Поля
| Поле | Тип данных | Описание |
|---|---|---|
id |
int |
Первичный ключ, уникальный идентификатор записи данных ярлыка. Связывается с полем id в базовой таблице shortcut.
|
shortcut_set |
varchar(32) |
Машинное имя набора ярлыков, к которому принадлежит данный ярлык. Внешний ключ к таблице shortcut_set.
|
langcode |
varchar(12) |
Код языка, для которого представлены данные в этой записи (например, en, ru).
|
title |
varchar(255) |
Название ярлыка, которое отображается для пользователя в панели инструментов. |
weight |
int |
Вес ярлыка, определяющий его порядок относительно других ярлыков в within its set. |
status |
tinyint |
Статус записи данных. 1 означает, что перевод опубликован, 0 - не опубликован.
|
created |
int |
Временная метка Unix, указывающая, когда была создана данная запись перевода. |
changed |
int |
Временная метка Unix, указывающая, когда данная запись перевода была в последний раз изменена. |
Как это работает
Ярлыки в Drupal - это быстрые ссылки на важные или часто используемые страницы сайта, которые обычно отображаются в виде панели инструментов в верхней части страницы для пользователей с соответствующими правами. Каждый ярлык принадлежит к определённому набору (shortcut_set), например, "По умолчанию" или набору, специфичному для какой-либо роли.
Базовая таблица shortcut хранит основную, не зависящую от языка информацию о ярлыке, такую как ссылка (link) и универсальный идентификатор (uuid). Таблица shortcut_field_data, в свою очередь, хранит переводимые данные, в первую очередь название (title). Для каждого ярлыка и каждого языка сайта может существовать отдельная запись в этой таблице.
Когда система Drupal загружает ярлыки для отображения, она объединяет данные из базовой таблицы shortcut с данными из shortcut_field_data для текущего активного языка. Если перевод для запрошенного языка не найден, может быть использовано значение по умолчанию.
Поле status позволяет управлять видимостью перевода, а поля created и changed полезны для аудита и отслеживания изменений.
Пример SQL-запроса
Получить все опубликованные ярлыки на русском языке для набора "default" можно следующим запросом:
SELECT sd.id, sd.title, s.link__uri, s.link__title
FROM shortcut_field_data sd
INNER JOIN shortcut s ON sd.id = s.id
WHERE sd.shortcut_set = 'default'
AND sd.langcode = 'ru'
AND sd.status = 1
ORDER BY sd.weight ASC;
Смотрите также
-
таблицу
shortcut,
которая является базовой таблицей сущности ярлыка -
таблицу
shortcut_set,
которая хранит наборы ярлыков -
таблицу
shortcut_set_users,
которая связывает пользователей с наборами ярлыков -
таблицу
menu_link_content_data,
которая хранит данные для ссылок меню