Обычным способом распространения продукции, чтобы иметь атрибуты специфичной для данной категории в ATG является расширение product
хранилища дескриптора элемента ,
Обычно вы создадите новый подтип продукта для продукта категории и добавляете свойства для каждого атрибута категории.
Например, вы можете определить «ТВ продукта» подтип продукта, где он имеет атрибут Размер экрана
По умолчанию есть только один тип product
. Этот факт представлен собственностью type
, не имеющей никаких параметров.
<property name="type" data-type="enumerated" column-name="product_type" writable="false" hidden="true"> </property>
Вы можете расширить это представление для представления нескольких типов и подтипов.
<property name="type" data-type="enumerated" column-name="product_type" writable="false" hidden="true">
<option value="tv"/>
<option value="option2"/>
</property>
Затем вы можете определить подтип дескриптора элемента, как
<item-descriptor name="tvProduct" super-type="product" sub-type-value="tv">
<!-- properties -->
</item-descriptor>
И тогда вы можете добавить property
и table
элементы в вашем подтипа для представления свойств специфичных для данной категории, такие как screenSize
.
После этого вы можете обрабатывать tvProduct
, как и любой другой вид продукта. Они будут отображаться в любых запросах и т. Д. Для элементов типа product
- но если у вас есть экземпляр tvProduct
, он будет иметь дополнительную собственность screenSize
.