
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
- POST в Дополнительные поля для
MiniShop3\Model\msProductDataсоздаёт колонку и строку вms3_product_fields. - Поля товара меняют секцию, label, xtype,
visible,sort_order. Новую колонку здесь не создают.
Полный пример: Оптовая цена.
Кейс: секция «Цены»
- Утилиты → Поля товара → Добавить секцию.
- Ключ
prices, название Цены,sort_orderпосле «Основные данные». - Перенесите
price,old_price, extrawholesale_priceв секцию Цены. - Сохраните, перезагрузите карточку товара.
Кейс: скрыть color и size
Если размер и цвет идут через опции:
- Откройте поле
color→ снимите Видимость. - То же для
size. - Поля остаются в БД, на вкладке не показываются.
Кейс: SEO-блок
- Секция
seo, название SEO. - Перенесите
tagsили кастомные extra-поля метаданных. - Поднимите секцию в списке 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 fields | Model fields — заказ, vendor. Product fields — только вкладка «Данные» |
| xtype не тот | Редактирование поля в утилите или через PUT page-fields |
