Добрый день!
Интернет-магазин. Есть иерархия опрделенная, для каждой категории в админке нужно выводить определенные поля для заполнения параметрами.
Например, категории:
- Фрукты, необходимая форма с полями (название, цена, ХАРАКТЕРИСТИКА №1)
- Краски, необходимая форма с полями (название, цена, ХАРАКТЕРИСТИКА №2)
- Машины, необходимая форма с полями (название, цена, ХАРАКТЕРИСТИКА №3)
В каждой категории есть базовые поля для формы - название и цена, но и есть уникальные характеристики товара.
Как не хардкодить прописывая HTML типа такого
<input type="хардкод" placeholder="" name="хардкод" >
Я предполагаю сделать так, при формировании новой категории чекбоксами выбирать необходимые поля, при заведении нового товара форма с базовыми полями и произвольными будет формироваться на лету.
Для полей создаю объект поля, типа:
$field_data_manufacture = [
'id' => 'manufacture_id',
'type' => 'text',
'label' => 'Производитель',
'input_name' => 'input_name_field',
'placeholder' => 'Производитель',
'required' => true,
];
и так для каждого поля.
Вопрос в самой архитектуре такого модуля, какие лучше классы создать и какую связь между ними сделать? чтобы в админке при создании новой категории можно было чекбоксами выбрать нужные поля для формы, а при создании товара после выбора категории отобразить необходимую форму?