Skip to content
MiniShop3
MiniShop3
Современный компонент интернет-магазина для MODX 3
  1. Компоненты
  2. MiniShop3
  3. Cookbook менеджера
  4. Поля товара

Cookbook полей товара

Поля товара задают раскладку вкладки Данные на карточке товара. Колонку в БД создают через extra fields.

Справочник: Поля товара.

Цель

Вы группируете article, price, extra-поля по секциям, скрываете лишнее, меняете порядок. Vue-компонент вкладки читает GET /api/mgr/config/page-fields/product_data.

page_key

page_keyЭкран
product_dataВкладка «Данные товара»

Других page_key в 1.13.x для этой утилиты нет.

Связь с extra fields

  1. POST в Дополнительные поля для MiniShop3\Model\msProductData создаёт колонку и строку в ms3_product_fields.
  2. Поля товара меняют секцию, label, xtype, visible, sort_order. Новую колонку здесь не создают.

Полный пример: Оптовая цена.

Кейс: секция «Цены»

  1. Утилиты → Поля товараДобавить секцию.
  2. Ключ prices, название Цены, sort_order после «Основные данные».
  3. Перенесите price, old_price, extra wholesale_price в секцию Цены.
  4. Сохраните, перезагрузите карточку товара.

Кейс: скрыть color и size

Если размер и цвет идут через опции:

  1. Откройте поле color → снимите Видимость.
  2. То же для size.
  3. Поля остаются в БД, на вкладке не показываются.

Кейс: SEO-блок

  1. Секция seo, название SEO.
  2. Перенесите tags или кастомные extra-поля метаданных.
  3. Поднимите секцию в списке drag-and-drop.

API appendix

http
GET /api/mgr/config/page-fields/product_data
GET /api/mgr/config/sections/product_data
PUT /api/mgr/config/page-fields/product_data
PUT /api/mgr/config/sections/product_data
DELETE /api/mgr/config/sections/product_data/{section_key}

GET доступен любой сессии менеджера. Запись: mssetting_save. POST /config/sections/... в 1.13.x нет.

Пример PUT полей (массив fields):

json
{
  "fields": [
    {
      "name": "wholesale_price",
      "label": "Оптовая цена",
      "section": 2,
      "visible": true,
      "sort_order": 10
    }
  ]
}

Пример PUT секций:

json
{
  "sections": [
    {
      "section_key": "prices",
      "label": "Цены",
      "hidden": false,
      "sort_order": 10
    }
  ]
}

Troubleshooting

СимптомДействие
Изменения не видныЖёсткая перезагрузка карточки товара
Поля нет в спискеСначала extra field для msProductData
Путаете с model fieldsModel fields — заказ, vendor. Product fields — только вкладка «Данные»
xtype не тотРедактирование поля в утилите или через PUT page-fields

См. Cookbook менеджера, model-fields.