Под час работы с MODxRevolution, в случае если быть более точным, под час создании шаблонов, зачастую возникает надобность прибавления всевозможных условий и вычислений на лету. К примеру, считается ли эта страничка Главной либо страничкой Контактов, в случае если да, то вывести ссылку Карта сайта. Либо для интернета магазина, в случае если для документа предписано значение TV-параметра с размером скидки, то вывести вместо обыкновенной стоимости товаров, стоимость со скидкой.
Для обработки условий в MODx’е имеется типичный сниппет If, который скачивается посредством менеджер пакетов, приведу перевод мануала с rtfm.modx.com
СниппетIf вызвается с применением тега:
[[If]]
или же, в случае, когда ваш Основной параметр (subject) может поменяться до того, как обновится кэш ресурса:
[[!If]]
Доступные характеристики
Имя Описание Значение по умолчанию
subject Основной параметр, значение над которым исполняются условия operator Оператор для с сопоставления с основным параметром = operand Операнд, в случае если нужен — значение, которое нужно сопоставить с основным параметром, применяя Оператор then Вывести данное, в случае если результат сопоставления: true else Вывести данное, в случае если результат сопоставления: false debug В случае если true, вывести все подвергнутые обработке параметры 0 die В случае если debugand данный параметр true, исполнить die() после вывода всех параметров 0
Доступные операторы
Оператор Описание
!=,neq,not,isnot,isnt,unequal,notequal Исполняется в случае если Основной параметр не равняется Операнду. ==,=,eq,is,equal,equals,equalto Исполняется в случае если Главный параметр равняется Операнду. <,lt,less,lessthan Исполняется в случае если Главный параметр менее Операнда. >,gt,greater,greaterthan Исполняется в случае если Основной параметр более Операнда. <=,lte,lessthanequals,lessthanorequalto Исполняется в случае если Главный параметр менее, или равен Операнду. >=,gte,greaterthanequals,greaterthanequalto Исполняется в случае если Главный параметр более, или равен Операнду. isempty,empty Исполняется в случае если Главный параметр пустой. !empty,notempty,isnotempty Исполняется в случае если Главный параметр не пустой. isnull,null Исполняется в случае если Главный параметр располагает значением null. inarray,in_array,ia Исполняется в случае если Главный параметр есть в списке перечисленном через запятую в Операнде.
Примеры
Цифровое сопоставление:[[!If? &subject=`[[+total]]` &operator=`GT` &operand=`3` &then=`У вас более нежели 3 штуки!`]]
Строковое сопоставление:[[!If? &subject=`[[+name]]` &operator=`EQ` &operand=`George` &then=`Hey George! Long time no see!` &else=`You’re not George. Goaway.` ]]
Встроенный вызов сниппета:[[!If? &subject=`[[+modx.user.id]]` &operator=`EQ` &operand=`0` &then=`[[Login]]` &else=`[[Logout]]` ]]
Проверка поля ресурса либо TV-параметра (либо всякого иного значения, которое не изменится до обновления кэша ресурса) под час вызова сниппетаIf , удостоверьтесь, что применяете кэшируемый вызов сниппета для проверки условия, для того чтобы не было надобности исполнять эту проверку при любом запросе.
Смотрите также:
Услуги по MODX Revolution
Посмотреть все услуги
Оптимизация сайта
Заказав услуги по технической оптимизации сайта мы избавим вас от ошибок присутствующих на сайте, а так же увеличим скорость работы вашего сайта.
Создание сайта на MODX
Мы создадим для вас такой сайт, который подойдет именно в вашем случае и станет отличным инструментом привлечения клиентов и увеличения продаж.
Перенос сайта на MODX
Работа по переносу сайта на MODX осуществляется в максимально короткие сроки. Стоимость зависит от сложности переносимого сайта
Продвижение сайта на MODX
Если вы хотите получить быстрые и ощутимые результаты, подняться в топ в минимальные сроки, то доверьте нам продвижение своего сайта.