НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
130 of 152 menu

Таблица oc_length_class_description

Таблица oc_length_class_description является частью системы единиц измерения в OpenCart и предназначена для хранения переводов названий и описаний единиц длины (например, сантиметр, дюйм, метр) на разных языках магазина.

Поля

Поле Тип данных Описание
length_class_id int Внешний ключ, связывающий описание с конкретной единицей измерения из таблицы oc_length_class.
language_id int Идентификатор языка, для которого предназначено данное описание. Внешний ключ для таблицы oc_language.
title varchar(32) Название единицы измерения на конкретном языке (например, "Сантиметр", "Centimeter", "Zentimeter").
unit varchar(4) Сокращенное обозначение единицы измерения (например, "см", "cm", "in"). Используется при отображении значений на витрине магазина.

Как это работает

В админ-панели OpenCart в разделе "Система → Локализация → Единицы длины" администратор может создавать и настраивать различные единицы измерения (например, сантиметры, миллиметры, дюймы). Для каждой единицы задается значение в базовых единицах (миллиметрах) в таблице oc_length_class.

Для поддержки мультиязычности каждую единицу измерения необходимо назвать и обозначить на всех активных языках магазина. Именно для этого служит таблица oc_length_class_description. Для каждой записи из oc_length_class в этой таблице создается столько записей, сколько языков установлено в магазине.

Когда покупатель на витрине магазина видит габариты товара (длину, ширину, высоту) или выбирает опции, связанные с длиной, система использует записи из этой таблицы для корректного отображения названия и сокращения единицы измерения на текущем языке.

Например, для единицы измерения "Сантиметр" (length_class_id = 1) в этой таблице будут храниться записи:

  • Для русского языка (language_id = 1): title = "Сантиметр", unit = "см"
  • Для английского языка (language_id = 2): title = "Centimeter", unit = "cm"

Пример SQL-запроса

Получить все переводы для всех единиц длины можно следующим запросом:

SELECT lcd.*, l.name as language_name, l.code as language_code FROM oc_length_class_description lcd LEFT JOIN oc_language l ON (lcd.language_id = l.language_id) ORDER BY lcd.length_class_id, lcd.language_id;

Получить переводы конкретной единицы измерения (например, ID=1) на всех языках:

SELECT lcd.title, lcd.unit, l.name as language FROM oc_length_class_description lcd LEFT JOIN oc_language l ON (lcd.language_id = l.language_id) WHERE lcd.length_class_id = 1;

Смотрите также

  • таблицу oc_length_class,
    которая хранит основные данные и коэффициенты пересчета единиц длины
  • таблицу oc_weight_class_description,
    которая выполняет аналогичную функцию для единиц веса
  • таблицу oc_language,
    которая хранит список активных языков магазина
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить