Контактная информация

По всем интересующим вас вопросам связывайтесь при помощи контактной информации приведенной на этой странице!

skype: metsof
email: accusser@gmail.com

В социальных сетях...

Форма обратной связи

Авторизация

Дополнение IF MODX Revolution для выполнения условных выражений

Сайдбар

Что такое if?

Условный логический сниппет, обеспечивающий выполнение условных выражений в MODx

История создания

IF написан Джейсоно Ковардом (Jason Coward), известным как opengeek, и Шоном Маккормиком, известным как splittingred и опубликован 29 октября 2009.

Загрузка

Вы можете загрузить ПО с помощью менеджера MODx Revolution, используя Package Management, или из хранилища дополнений MODx.

Использование

Сниппет If может быть вызван с использованием тегов:

  [[If]]  

или, в случае, если объект может быть изменен до того, как кэш ресурса будет очищен, используйте не кэшируемый синтаксис:

 [[!If]]  

Доступные свойства

Имя

Описание

Значение “по умолчанию“

subject

Параметр, над значением которого выполняются условия.


operator

Оператор сравнения с subject

=

operand

Используется при необходимости, значение для сравнения subject и operator.


then

Выводится, если состояние принимает значение true


else

Выводится, если состояние принимает значение false


debug

Если значение true, отображает все проверенные свойства

0

die

Если прошло обработку debug и значение true, после отображения свойств вывести die().

0

Доступные операторы

Оператор

Описание

!=,neq,not,isnot,isnt,unequal,notequal

Принимается если subject не равен operand

==,=,eq,is,equal,equals,equalto

Принимается если subject равен operand

<,lt,less,lessthan

Принимается если subject меньше operand.

>,gt,greater,greaterthan

Принимается если subject больше operand.

<=,lte,lessthanequals,lessthanorequalto

Принимается если subject меньше или равен operand

>=,gte,greaterthanequals,greaterthanequalto

Принимается если subject больше или равен operand.

isempty,empty

Принимается если subject без значения.

!empty,notempty,isnotempty

Принимается если subject имеет значение.

isnull,null

Принимается если subject равен 0

inarray,in_array,ia

Принимается если subject найден в списке операндов (строковый параметр, разделитель - запятая)

Примеры

Сравнение чисел:

[[!If? &subject=`[[+total]]` &operator=`GT` &operand=`3` &then=`You have more than 3 items!`]] 



Сравнение строк:

[[!If?
   &subject=`[[+name]]`
   &operator=`EQ`
   &operand=`George`
   &then=`Hey George! Long time no see!`
   &else=`You're not George. Go away.`
]]

Встраиваемый вызов сниппета

[[!If?
   &subject=`[[+modx.user.id]]`
   &operator=`EQ`
   &operand=`0`
   &then=`[[Login]]`
   &else=`[[Logout]]`
]]

При использовании сниппета IF для проверки поля ресурса или шаблонной переменной (или другого значения, не измененного до очистки кэша), убедитесь, что используете кэшируемый вызов сниппета для проверки состояния. Это нужно, чтобы быть уверенным, что этот процесс не нужен при каждом запросе.

[[If?
   &subject=`[[*hidemenu]]`
   &operator=`EQ`
   &operand=`1`
   &then=`This resource is not visible in the menu.`
   &else=`This resource shows up in the menu in spot [[*menuindex]].`
]]