300

Маркет

DLE Conditions - условия в шаблонизаторе DataLife Engine


Модуль DLE Conditions позволит вам организовать в файлах шаблона и самих новостях разного рода условия и проверки.

Модуль поддерживает следующий ряд операндов

[if field=текст]Значение поля равно указанному тексту[/if]
[if field!=текст]Значение поля не равно указанному тексту[/if]
[if field==текст,текст2]Значение поля имеет текст и текст2[/if] // Только для категорий, тегов и дополнительных полей у которых значения разделены запятой
[if field!==текст,текст2]Значение поля не имеет текст и текст2[/if] // Только для категорий, тегов и дополнительных полей у которых значения разделены запятой
[if field>100]Значение поля строго больше 100[/if]
[if field>=55]Значение поля больше либо равно 55[/if]
[if field<300]Значение поля строго меньше 300[/if]
[if field<=444]Значение поля меньше или равно 444[/if]
[if field~кофе]В тексте поля встречается слово кофе[/if]
[if field!~кофе]В тексте поля НЕ встречается слово кофе[/if]
[if field]Поле не пустое[/if]
[if !field]Поле пустое[/if]

Вложенные условия

Модуль включает в себя возможность вложенных условий, пример:
[if xfvalue_status=new]
    Новая
    [if1 rating>50 || news_read>1000]
        популярная
    [else1]
        не популярная
    [/if1]
    новость
[/if]
То есть, каждое новое вложение должно иметь число по возрастающему.

Работа с датой редактирования и добавления новости

Для работы с датой новостей добавлены два параметра, это day. и date.

Пример параметра day.:
[if day.date<1]Добавлено больше 1 дня назад[/if]
[if day.date>1]Добавлено меньше 1 дня назад[/if]
[if day.date=0]Добавлено сегодня[/if]
[if day.editdate=0]Отредактировано сегодня[/if]
Как должно было быть понятно из примеров, параметр day. преобразовывает указанное количество дней в дату и сравнивает с датой новости.

Пример параметра date.:
[if date.date=сегодня]Добавлено сегодня[/if]
[if date.date=вчера]Добавлено вчера[/if]
[if date.date=1 день]Добавлено 1 день назад[/if]
[if date.date=2 дня]Добавлено 2 дня назад[/if]
[if date.date=5 дней]Добавлено 5 дня назад[/if]
[if date.date=1 неделя]Добавлено 1 неделю назад[/if]
[if date.date=2 недели]Добавлено 2 недели назад[/if]
[if date.date=5 недель]Добавлено 5 недель назад[/if]
[if date.date=завтра]Будет добавлено завтра[/if]
[if date.date=1 месяц]Добавлено 1 месяц назад[/if]
[if date.date=2 месяца]Добавлено 2 месяца назад[/if]
[if date.date=5 месяцев]Добавлено 5 месяцев назад[/if]
[if date.date=1 год]Добавлено 1 год назад[/if]
[if date.date=2 года]Добавлено 2 года назад[/if]
[if date.date=5 лет]Добавлено 5 лет назад[/if]
Как должно было быть понятно из примеров, параметр date. работает с датой в строчном виде.

Количество фотографий в дополнительном поле типа Галерея

Пример с проверкой сколько фото в дополнительном поле
[if count.galery>5]Много фотографий[/if]
galery разумеется это название дополнительного поля у которого тип Галерея. 

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

В условиях вы можете использовать логические операторы И (&&) и ИЛИ (||). Пример:
[if date.date=сегодня && r.news_read>1000 || r.rating>50]Новость популярна![/if]
Выведет «Новость популярна!» если она добавлена сегодня и имеет больше 1000 просмотров ИЛИ рейтинг новости больше 50! Вы можете комбинировать эти операторы как хотите.

Сравнение ячеек

Вы можете указывать второй параметр так же дополнительные поля или другие параметры новости. Пример:
[if xfvalue_status=xfvalue_status_end]Товар закончен, только под заказ.[/if]
 

Сравнение текста и чисел

Модуль автоматически определяет сравнение строки и числового значения, вам больше ничего дописывать не нужно. Пример:
{title limit="45"}[if r.title>45]...[/if]

Условия с тегом {info}

В main.tpl и в других файлах шаблона доступны следующие условия
[if info]Есть какая-то ошибка или уведомление[/if]
[if !info]Ошибки или уведомления нет![/if]

Краткие условия для проверки есть ли что-то в поле или оно пустое

Существует краткая запись
[if xfvalue_count]Есть в наличии[/if]
[if !xfvalue_count]Под заказ[/if]

Информация
Версия DataLife Engine: 11.0 - 13.2
Версия PHP: 5.4 - 7.3
Дата обновления: 26 Марта 2019
Версия модуля: 1.0.0
Кодировка: UTF-8
Версия Ioncube Loader: 10.2.0 или выше
Купить модуль

Купить модуль [ STANDARD ]
  • Техническая поддержка
  • Привязка к домену сайта
  • Открытый код
  • Разрешено снятие копирайтов
Standard лицензия 300 рублей
Купить модуль [ EXTENDED ]
  • Техническая поддержка и настройка продукта
  • Привязка к домену сайта
  • Открытый код
  • Разрешено снятие копирайтов
Extended лицензия 5000 рублей

Комментарии




  1. Uralbox
    Uralbox Клиенты 23 апреля 2019 02:55

    Fatal error: Class 'dleConditions' not found in /home/admin/web/*.net/public_html/engine/cache/system/plugins/07b537f8
    5deab7239ad94f8f8426b5a9.php on line 49

    Такая вот ошибка-конфликт

    1. LazyDev
      LazyDev Разработчик 23 апреля 2019 17:31

      Версия DLE?