Бесплатные курсы по JavaScript
Начало 17.02.2026. Продолжительность: 1 месяц. Для записи вступайте в канал →
44 of 152 menu
Бесплатная онлайн лекция "Работа с AJAX в JavaScript". Начало: 4 февраля в 20.00. Продолжительность: 1-2 часа. Жми для записи!

Таблица oc_custom_field_description

Таблица oc_custom_field_description является частью системы пользовательских полей в OpenCart и предназначена для хранения локализованных названий и описаний этих полей на разных языках. Каждое дополнительное поле может иметь несколько записей в этой таблице - по одной для каждого языка магазина.

Поля

Поле Тип данных Описание
custom_field_id int Идентификатор пользовательского поля. Внешний ключ, связывающий описание с основной записью в таблице oc_custom_field.
language_id int Идентификатор языка. Внешний ключ для таблицы oc_language. Определяет, для какого языка предназначено данное описание.
name varchar(128) Название пользовательского поля, которое будет отображаться пользователю на фронтенде (например, "Номер лицензии", "Любимый цвет").

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

Когда администратор создает новое пользовательское поле в панели управления (Администрирование → Каталог → Дополнительные поля), система сначала создает запись в основной таблице oc_custom_field, где хранятся технические параметры поля (тип, расположение, валидация и т.д.). После этого для каждого активного языка магазина создается отдельная запись в таблице oc_custom_field_description, куда администратор вводит переведенное название поля.

Например, если в магазине используются русский (language_id = 1) и английский (language_id = 2) языки, то для одного custom_field_id в таблице oc_custom_field_description будет существовать две записи: одна с name на русском, другая - с name на английском.

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

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

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

SELECT cfd.*, l.name as language_name, l.code as language_code FROM oc_custom_field_description cfd LEFT JOIN oc_language l ON (cfd.language_id = l.language_id) WHERE cfd.custom_field_id = 7 ORDER BY l.sort_order;

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

  • таблицу oc_custom_field,
    которая хранит основные параметры дополнительных полей
  • таблицу oc_custom_field_value,
    которая хранит значения для полей типа "Select" или "Radio"
  • таблицу oc_custom_field_value_description,
    которая хранит локализованные названия значений для полей
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить