Таблица oc_information_description
Таблица oc_information_description предназначена для хранения многоязычного контента информационных страниц, таких как "О нас", "Условия использования", "Политика конфиденциальности" и других, создаваемых через административную панель OpenCart.
Поля
| Поле | Тип данных | Описание |
|---|---|---|
information_id |
int |
Идентификатор информационной страницы. Внешний ключ, связывающий описание с основной записью в таблице oc_information.
|
language_id |
int |
Идентификатор языка. Внешний ключ для таблицы oc_language. Позволяет хранить разные версии контента для каждого языка магазина.
|
title |
varchar(64) |
Заголовок (название) информационной страницы на конкретном языке. |
description |
text |
Основное текстовое содержимое (тело) страницы. Может содержать HTML-разметку для форматирования. |
meta_title |
varchar(255) |
Meta-тег title для данной страницы и языка. Используется для SEO.
|
meta_description |
varchar(255) |
Meta-тег description для данной страницы и языка. Используется для SEO.
|
meta_keyword |
varchar(255) |
Meta-тег keywords для данной страницы и языка. Используется для SEO.
|
Как это работает
При создании новой информационной страницы в админ-панели (Система > Информация > Информационные статьи) сначала создается запись в таблице oc_information, где хранятся общие настройки (статус, порядок сортировки). Этой записи присваивается уникальный information_id.
Затем для каждого активного языка в магазине создается соответствующая запись в таблице oc_information_description с этим information_id и language_id. Это позволяет администратору заполнить заголовок, описание и мета-теги для каждого языка отдельно.
Когда посетитель открывает информационную страницу на сайте, система по идентификатору страницы и текущему языку выбирает соответствующий перевод из oc_information_description для отображения заголовка и контента.
Первичный ключ для этой таблицы составляет комбинация полей information_id и language_id, что гарантирует уникальность записи описания для каждой страницы на каждом языке.
Пример SQL-запроса
Выбрать все русскоязычные описания информационных страниц:
SELECT id.*, i.sort_order, i.status
FROM oc_information_description id
LEFT JOIN oc_information i ON (id.information_id = i.information_id)
LEFT JOIN oc_language l ON (id.language_id = l.language_id)
WHERE l.code = 'ru';
Смотрите также
-
таблицу
oc_information,
которая хранит основные настройки информационных страниц -
таблицу
oc_language,
которая содержит список языков магазина -
таблицу
oc_product_description,
которая работает по аналогичному принципу для товаров -
таблицу
oc_category_description,
которая работает по аналогичному принципу для категорий