Курсы обучения
+7 (351) 777-80-70
2021.05.07

Синтаксис - Линейка решений INTEC: Universe

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

Доступные операторы:
  • {Текст 1|Текст 2|Текст n} - Группа. Выбирает один из возможных текстов в группе для каждого элемента. Группа начинается с символа { и заканчивается символом }. Элементы группы разделяются символом |;
  • #MACROS# - Макрос. Заменяется на содержимое элемента (у каждого элемента свои макросы). Макрос начинается с символа # и заканчивается символом #. Внутри оператора помещается название макроса;
  • [Текст и операторы] - Условный оператор. Помещает в себе текст и другие операторы. Текст условного оператора будет выведен только в том случае, если он содержит в себе другие операторы и один из этих операторов возвращает не пустой результат. Условный оператор начинается с символа [ и заканчивается символом ];
  • \ - Экранирование. Ставится перед любым спец. символом операторов, для того чтобы спец. символ считался обычным и выводился в тексте.

Пример: {Недорогой|Дешевый|Качественный} #NAME#[ с мощностью #PROPERTY_POWER#Вт.] и отличной {динамикой|эргономикой}.
Из данного примера могут получится следующие варианты:

  • Недорогой Пылесос Bosch с мощностью 300Вт. и отличной эргономикой;
  • Качественный Пылесос Samsung и отличной динамикой (условный оператор не сработал, т.к. предполагается что данное свойство не заполнено у этого элемента);
  • Дешевый Пылесос Haier с мощностью 500Вт. и отличной динамикой;
  • и др.
Синтаксис

Для генерации текста можно использовать различные операторы, чтобы для каждого элемента текст был разным. Все операторы поддерживают вложенность. Пример: {Недорогой|Дешевый|Качественный} #NAME#[с мощностью #PROPERTY_POWER#Вт.] и отличной {динамикой|эргономикой}.

Доступные операторы:
  • {Текст 1|Текст 2|Текст n} - Группа. Выбирает один из возможных текстов в группе для каждого элемента. Группа начинается с символа { и заканчивается символом }. Элементы группы разделяются символом |;
  • #MACROS# - Макрос. Заменяется на содержимое элемента (у каждого элемента свои макросы). Макрос начинается с символа # и заканчивается символом #. Внутри оператора помещается название макроса;
  • [Текст и операторы] - Условный оператор. Помещает в себе текст и другие операторы. Текст условного оператора будет выведен только в том случае, если он содержит в себе другие операторы и один из этих операторов возвращает не пустой результат. Условный оператор начинается с символа [ и заканчивается символом ];
  • \ - Экранирование. Ставится перед любым спец. символом операторов, для того чтобы спец. символ считался обычным и выводился в тексте.
Доступные макросы инфоблока:
  • ID - Идентификатор инфоблока;
  • CODE - Символьный код инфоблока;
  • NAME - Наименование инфоблока;
  • DESCRIPTION - Описание инфоблока;
  • SECTIONS_NAME - Наименование разделов инфоблока;
  • SECTION_NAME - Наименование раздела инфоблока;
  • ELEMENTS_NAME - Наименование элементов инфоблока;
  • ELEMENT_NAME - Наименование элемента инфоблока.
Доступные макросы раздела инфоблока:
  • ID - Идентификатор раздела;
  • CODE - Символьный код раздела;
  • NAME - Наименование раздела;
  • DESCRIPTION - Описание раздела;
  • PROPERTY_<Код свойства> - UF_ свойство раздела. Код свойства прописывается без приставки UF_;
  • IBLOCK_ID - Идентификатор инфоблока;
  • IBLOCK_CODE - Символьный код инфоблока;
  • IBLOCK_NAME - Наименование инфоблока;
  • IBLOCK_DESCRIPTION - Описание инфоблока;
  • IBLOCK_SECTIONS_NAME - Наименование разделов инфоблока;
  • IBLOCK_SECTION_NAME - Наименование раздела инфоблока;
  • IBLOCK_ELEMENTS_NAME - Наименование элементов инфоблока;
  • IBLOCK_ELEMENT_NAME - Наименование элемента инфоблока.
Доступные макросы элемента инфоблока:
  • ID - Идентификатор элемента;
  • CODE - Символьный код элемента;
  • NAME - Наименование элемента;
  • DESCRIPTION_PREVIEW - Описание анонса элемента;
  • DESCRIPTION_DETAIL - Детальное описание элемента;
  • PROPERTY_<Код свойства> - Свойство элемента;
  • SECTION_ID - Идентификатор раздела;
  • SECTION_CODE - Символьный код раздела;
  • SECTION_NAME - Наименование раздела;
  • SECTION_DESCRIPTION - Описание раздела;
  • SECTION_PROPERTY_<Код свойства> - UF_ свойство раздела. Код свойства прописывается без приставки UF_;
  • IBLOCK_ID - Идентификатор инфоблока;
  • IBLOCK_CODE - Символьный код инфоблока;
  • IBLOCK_NAME - Наименование инфоблока;
  • IBLOCK_DESCRIPTION - Описание инфоблока;
  • IBLOCK_SECTIONS_NAME - Наименование разделов инфоблока;
  • IBLOCK_SECTION_NAME - Наименование раздела инфоблока;
  • IBLOCK_ELEMENTS_NAME - Наименование элементов инфоблока;
  • IBLOCK_ELEMENT_NAME - Наименование элемента инфоблока.

Пример для мета-информации:
{=this.Name} из {=morphology {=concat {=filterProperty "PROCREATOR"} ", "} "РД"}
Дополнительные операторы, доступные в мета-информации и тегах:
  • {=lower argument1 argument2 ... argumentN} - Оператор прведения к нижнему регистру. Приводит все регистрозависимые символы, передающиеся в аргументах, к нижнему регистру;
  • {=upper argument1 argument2 ... argumentN} - Оператор прведения к верхнему регистру. Приводит все регистрозависимые символы, передающиеся в аргументах, к верхнему регистру;
  • {=concat argument1 argument2 ... argumentN "разделитель"} - Оператор сложения строк с использованием разделителя. Объединяет все аргументы в строку, устанавливая между ними разделитель, указанный аргументом "разделитель". Разделитель может иметь любую длину и содержать любые символы;
  • {=limit argument1 argument2 ... argumentN "разделитель" "длина"} - Оператор ограничения с использованием разделителя. Объединяет все аргументы в строку, устанавливая между ними разделитель, указанный аргументом "разделитель" и устанавливает максимальную длину из аргумента "длина". Разделитель может иметь любую длину и содержать любые символы;
  • {=translit argument1 argument2 ... argumentN} - Оператор транслитерации. Производит транслитерацию аргументов;
  • {=>min argument1 argument2 ... argumentN} - Оператор выборки минимального числа. Выбирает минимальное число из аргументов;
  • {=max argument1 argument2 ... argumentN} - Оператор выборки максимального числа. Выбирает максимальное число из аргументов;
  • {=distinct argument1 argument2 ... argumentN} - Оператор выборки уникальных значений. Выбирает уникальные значения из аргументов;
  • {=morphology argument1 argument2 ... argumentN "модификаторы"} - Оператор обработки морфологии. Конвертирует слова в зависимости от модификаторов, устанавливаемых аргументом "модификаторы";
Оператор обработки морфологии (morphology)
Оператор морфологии может иметь 3 типа модификаторов, которые указываются через пробел. При использовании всех типов модификаторы будут выглядеть следующим образом: "род число падеж". Итоговые слова будут изменены в зависимости от модификаторов.
Возможные значения модификатора род:
  • МР - Мужской
  • ЖР - Женский
  • СР - Средний
Возможные значения модификатора число:
  • ЕД - Единственное
  • МН - Множественное
Возможные значения модификатора падеж:
  • ИМ - Именительный
  • РД - Родительный
  • ДТ - Дательный
  • ВН - Винительный
  • ТВ - Творительный
  • ПР - Предложный

Наши решения