Добавление полей для фильтрации в интерфейс модуля — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
 
(не показано 18 промежуточных версий этого же участника)
Строка 4: Строка 4:
 
== Задача ==
 
== Задача ==
  
Нам необходимо добавить в модуль "Каталог" к существующим полям для фильтрации новые поля, которых нет в списке на добавление:
+
Необходимо добавить в модуль, например "Каталог", к существующим полям для фильтрации новые поля, которых нет в списке на добавление:
 +
 
  
 
[[Файл:Filterpage1.png]]
 
[[Файл:Filterpage1.png]]
 +
  
 
А в карточке товара они присутствуют:
 
А в карточке товара они присутствуют:
 +
  
 
[[Файл:Filterpage2.png]]
 
[[Файл:Filterpage2.png]]
  
== Решение если для объектов каталога используется только один тип (системный "объект каталога") ==
 
  
== Решение если для объектов каталога используется только один тип (системный "объект каталога") ==
+
== Решение ==
 +
 
 +
В первую очередь нужно определить к какому тип данных относится объект каталога, с указанными выше характеристиками.
 +
 
 +
Для этого, посмотрите как называется тип данных, в блоке "Основный параметры", если там указан "объект каталога":
 +
 
 +
 
 +
[[Файл:Filterpage3.png]]
 +
 
 +
 
 +
то используется системный тип "объект каталога", а если указан любой другой тип - используется тип, дочерний к типу "объект каталога".
 +
 
 +
=== Решение, если для объектов каталога используется только один тип (системный "объект каталога") ===
 +
 
 +
 
 +
 
 +
Если используется системный тип, то нужно:
 +
 
 +
*перейти в модуль "Шаблоны данных"
 +
*найти тип "объект каталога"
 +
*открыть его на редактирование
 +
*найти нужное поле, в нашем случае "вес" и "количество подключений к ТВ"
 +
*включить редактирование этих полей
 +
*отметить галочку "фильтруемое":
 +
 
 +
 
 +
[[Файл:Filterpage4.png]]
 +
 
 +
 
 +
После этих действий поле можно будет добавить в фильтры модуля "Каталог".
 +
 
 +
=== Решение, если для объектов каталога используются собственные типы, дочерние к системному ===
 +
 
 +
 
 +
 
 +
Если поля, которые нужно вывести для фильтрации, содержатся в типе, дочернем к системному типу "объект каталога", то
 +
нужно:
 +
 
 +
*создать в типе "объект каталога" такую же группу полей(в которой содержится нужно нам поле), как в дочернем типе
 +
*создать в данной группе нужное для фильтрации поле, с такими же параметрами, как в дочернем типе
 +
*отметить его как "фильтруемое"
 +
 
 +
После этих действий поле можно будет добавить в фильтры модуля "Каталог":
 +
 
 +
'''все параметры в создаваемых группах и полях в системном типе должны полностью повторять группы и поля и дочернем типе'''
 +
 
 +
 
 +
[[Файл:Filterpage5.png]]
 +
 
  
 +
Также, нужно упомянуть, что, если Вы создали в системном типе полностью такое же поле, как в дочернем,
 +
то это поле "склеится", то есть, если Вы удалите его в системном типе, то оно удалится и у дочерних типов, обратное неверно.
  
  
 
'''Если рекомендации непонятны или не помогли - обращайтесь в [http://www.umi-cms.ru/support/ Службу Заботы].'''
 
'''Если рекомендации непонятны или не помогли - обращайтесь в [http://www.umi-cms.ru/support/ Службу Заботы].'''

Текущая версия на 12:07, 13 июня 2013

Актуально для версии 2.9

Задача

Необходимо добавить в модуль, например "Каталог", к существующим полям для фильтрации новые поля, которых нет в списке на добавление:


Filterpage1.png


А в карточке товара они присутствуют:


Filterpage2.png


Решение

В первую очередь нужно определить к какому тип данных относится объект каталога, с указанными выше характеристиками.

Для этого, посмотрите как называется тип данных, в блоке "Основный параметры", если там указан "объект каталога":


Filterpage3.png


то используется системный тип "объект каталога", а если указан любой другой тип - используется тип, дочерний к типу "объект каталога".

Решение, если для объектов каталога используется только один тип (системный "объект каталога")

Если используется системный тип, то нужно:

  • перейти в модуль "Шаблоны данных"
  • найти тип "объект каталога"
  • открыть его на редактирование
  • найти нужное поле, в нашем случае "вес" и "количество подключений к ТВ"
  • включить редактирование этих полей
  • отметить галочку "фильтруемое":


Filterpage4.png


После этих действий поле можно будет добавить в фильтры модуля "Каталог".

Решение, если для объектов каталога используются собственные типы, дочерние к системному

Если поля, которые нужно вывести для фильтрации, содержатся в типе, дочернем к системному типу "объект каталога", то нужно:

  • создать в типе "объект каталога" такую же группу полей(в которой содержится нужно нам поле), как в дочернем типе
  • создать в данной группе нужное для фильтрации поле, с такими же параметрами, как в дочернем типе
  • отметить его как "фильтруемое"

После этих действий поле можно будет добавить в фильтры модуля "Каталог":

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


Filterpage5.png


Также, нужно упомянуть, что, если Вы создали в системном типе полностью такое же поле, как в дочернем, то это поле "склеится", то есть, если Вы удалите его в системном типе, то оно удалится и у дочерних типов, обратное неверно.


Если рекомендации непонятны или не помогли - обращайтесь в Службу Заботы.