Таблица oc_download_description
Таблица oc_download_description является частью системы управления цифровыми товарами (downloads) в OpenCart. Она предназначена для хранения многоязычных описаний и названий файлов, которые могут быть привязаны к товарам. Каждая запись в этой таблице связана с конкретным файлом (download) и языком.
Поля
| Поле | Тип данных | Описание |
|---|---|---|
download_id |
int |
Внешний ключ, который связывает описание с конкретным файлом для скачивания. Ссылается на поле download_id в таблице oc_download.
|
language_id |
int |
Идентификатор языка, для которого предназначено это описание. Внешний ключ для таблицы oc_language.
|
name |
varchar(64) |
Название файла для скачивания, которое будет отображаться пользователю на конкретном языке (например, "Руководство пользователя", "Электронная книга"). |
Как это работает
В админ-панели OpenCart, в разделе "Каталог" → "Загрузки", администратор создает новый файл для скачивания. При этом в таблицу oc_download добавляется запись с основными данными (путь к файлу, маска и т.д.).
Для поддержки мультиязычности, для каждого созданного файла необходимо добавить его название на всех активных языках магазина. Эти названия сохраняются именно в таблице oc_download_description. Таким образом, для одного download_id в этой таблице будет несколько записей с разными language_id.
Когда покупатель приобретает товар, к которому привязан цифровой файл, он получает возможность скачать его. На странице заказов в личном кабинете и в письме-уведомлении отображается именно то название файла, которое соответствует языку интерфейса пользователя или языку заказа.
Первичный ключ для этой таблицы состоит из двух полей: download_id и language_id. Это гарантирует, что для одного файла не может быть двух описаний на одном языке.
Пример SQL-запроса
Получить все русскоязычные описания файлов для скачивания можно следующим запросом:
SELECT dd.*, d.filename
FROM oc_download_description dd
LEFT JOIN oc_download d ON (dd.download_id = d.download_id)
WHERE dd.language_id = 1;
Смотрите также
-
таблицу
oc_download,
которая хранит основные данные файлов для скачивания -
таблицу
oc_product_to_download,
которая связывает товары с файлами для скачивания -
таблицу
oc_order_download,
которая управляет доступом к скачиванию файлов после покупки -
таблицу
oc_language,
которая хранит список языков магазина