Вход

Шаблонизатор условий IF 7.0 by PunPun

Хак Шаблонизатор условий IF by PunPun для DLE даст вам возможность делать разные проверки и условия в шаблонах. Хак добавляет теги в файлы шаблона: if, elif, else - для того что бы выводить информацию которая находится внутри их в зависимости от результата условия. Условия работают в любом tpl файле, не зависимо, сторонний это модуль или стандартный tpl файл движка.

Представляю вашему внимаю хак с помощью которого вы сможете делать разные проверки на подобии те что в PHP. Хак добавляет теги : if, elif, else - для того что бы выводить информацию заключенные в них в зависимости от результата условия.

Для чего нужен хак «Шаблонизатор условий IF by PunPun»:
Хак предназначен для гибкого вывода данных по условиях в шаблоне без правок движка как такового. Вам не придется для каждого нужного вам условия делать правки в движке, и при случае обновления переносить их и искать. А так же если вы не можете делать их сами, то не придется платить фрилансерам за работу, и потом искать в случае если понадобится поддержка. Все очень просто, гибко и быстро.

В DLE уже есть условия, чем эти лучше?
Тем что они не только для доп полей и тегов, и не только в определенных tpl файлах. Хак работает абсолютно во всех tpl файлах вашего шаблона. Он может работать: с дополнительными полями новости и пользователя, с данными новости, с данными комментария, с наличием ошибки на странице (тег {info}), с страницей тегов, категории, статической страницей и страницей доп полей (tags/тег и xfsearch/доп поле или xfsearch/название/доп поле), с номером навигации, с проверкой телефона, планшета, пк, а так же правильной проверкой категории и тегов в новости. При этом хак имеет еще больше возможностей перед стандартными за счет того что имеет elif и else, первого может быть не ограниченно в то время когда в dle есть только один параметр if.

Особенности хака:
  1. Поддержка актуальных версий. Поддерживает используемые версии движка от версии 9.0 и выше.
  2. Множественное использование. Можете использовать условия сколько раз угодно! Ограничений нет!
  3. Полное соответствие тегам PHP. В версии v3 теперь есть возможность использовать в одной проверке теги "&&" и "||".
  4. Хак работает во всех tpl файлах. Если tpl файл вызывается стандартным шаблонизатором DLE!
  5. Множество параметров для условий.
  6. Минимальная нагрузка условий.
  7. Вложенность условий.
  8. Приоритет условий.
  9. Возможность добавления своих полей и подключение условий в любом файле.

Операнды которые поддерживаются в хаке:
[if field=значение]значение поля строго равно указанному значению[/if]__CODENR____CODENN__[if field!=значение]значение поля не равно указанному значению[/if]__CODENR____CODENN__[if field>1]значение поля строго больше единицы[/if]__CODENR____CODENN__[if field>=2]значение поля больше либо равно 2[/if]__CODENR____CODENN__[if field<3]значение поля строго меньше 3[/if]__CODENR____CODENN__[if field<=4]значение поля меньше или равно 4[/if]__CODENR____CODENN__[if field~значение]в тексте поля встречается слово значение[/if]__CODENR____CODENN__[if field!~значение]в тексте поля НЕ встречается слово значение[/if]

Поддержка конструкций:
[if *условия*] текст [/if]
[if *условия*] текст [else] текст [/if]
[if *условия*] текст [elif *условия*] текст [/elif][/if]
[if *условия*] текст [elif *условия*] текст [/elif][else] текст [/if]
[if *условия*] текст [elif *условия*] текст [/elif][elif *условия*] текст [/elif][elif *условия*] текст [/elif][elif *условия*] текст [/elif][else] текст [/if]

Примеры использования : Вывод текста "Горячая новость если рейтинг новости равен или больше 5 и прочитали больше 100 человек или же новость набрала больше 20 комментариев.
[if rating>=5 && news_read>100 || comm_num>20]Горячая новость[/if]
Вывод дополнительного поля с плеером если в нем есть vk.com или moowalk.co если их не найдено, выведем другое доп поле которое содержит Трейлер
[if xf_video~vk.com || xf_video~moowalk.co][xfvalue_video][else][xfvalue_trailer][/if]
Так же в новой версии добавлена поддержка работы с датой, к примеру выведем что новость добавлена сегодня или вчера
[if date=today]Сегодня[elif date=days-1]Вчера[/elif][else]Старые новости[/if]
Для новостей что добавлены сегодня выведет - "Сегодня", для вчерашних - "Вчера" а для всех остальных - "Старые новости". Кроме этого можно передавать саму дату, к примеру
[if date=2016-03-11]Кажется это было очень давно[/if]

Дополнение: Так же, если встречаются в сравнение два string (строк) и используется такие теги как
>, >=, <=, <
то они будут сравниваться по длине. Так же, для строки можно задавать сравнение по длине, с помощью этих сравнение
>, >=, <=, <
. К примеру
[if title>40]{title limit="40"}...[else]{title}[/if]
- эта конструкция выведет укороченный заголовок до 40 символов с троеточием если его длина больше 40 символом в другом случае выведет полный заголовок новости. Круто, правда ? И никаких доп правок в движке не нужно делать.
Купить $4
Открытый код:
$300
Цена доп лицензии:
$2



Версия модуля: 7.0
PHP:
5.4 - 7.2
CMS:
DLE 11.0 - 13.x
Кол-во клиентов:
68
Кол-во продаж:
84
Ioncube Loader 10.2
Обновлено: 4 месяца и 2 недели назад
26
3 959
Добавлено: 20 апрель 2017 в 21:37:01
Прокомментировать
  • bowtiesmilelaughingblushsmileyrelaxedsmirk
    heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
    winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
    worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
    expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
    disappointedconfoundedfearfulcold_sweatperseverecrysob
    joyastonishedscreamtired_faceangryragetriumph
    sleepyyummasksunglassesdizzy_faceimpsmiling_imp
    neutral_faceno_mouthinnocent

Комментарии (26)

  1. TeraMoune
    TeraMoune Посетители 11 октября 2018 12:08
    0
    Хм, я так понимаю тут заранее определены все *условия*, Возможность добавления своих полей и подключение условий в любом файле. Не совсем понятно.
    Например [if status="OPEN"] и должно получиться if( $row['status'] == "OPEN" ) Это и значит возможность добавления и как оно будет выглядеть ?
    1. TeraMoune
      TeraMoune Посетители 11 октября 2018 17:16
      0
      И что-то у всех аналогов показаны примеры в одну строку, а как будет с множеством строк ?
  2. Wingear
    Wingear Посетители 4 октября 2018 14:09
    0
    Здравствуйте! Возникает вот такая ошибка на локалке: Fatal error: The encoded file D:\OpenServer\domains\loc.gdemultiki.ru\engine\mod_punpun\ifelse\ifelse.php is corrupt. in Unknown on line 0
    Что делать?
  3. Uralbox
    Uralbox Клиенты 30 сентября 2018 23:30
    1
    PunPun, сделай пожалуйста плагином этот хак, чтобы было вообще без физических файлов. Мне кажется очень облегчит установку многим людям, тк правок движка для его установки достаточно много. Да и вообще при обновлении движка будет очень просто загрузить плагин - всего пару кликов. yum
  4. Quwake
    Quwake Клиенты 8 сентября 2018 21:02
    0
    Сделайте возможность использования без /xfsearch/ в url
  5. xvxxxy
    xvxxxy Клиенты 21 июля 2018 19:54
    0
    В логах с левых IP постоянно такая картина
    mod_fcgid: stderr: PHP Fatal error: <a href="https://punpun.name/">IF ELSE 7.0</a>: The license has a server restriction and is used on a non-authorised system. in Unknown on line 0

    Сам модуль при этом работает.
    1. PunPun
      PunPun Разработчик 21 июля 2018 23:11
      0
      Скорее всего домен не верный или файл лицензии поврежден.
      1. xvxxxy
        xvxxxy Клиенты 22 июля 2018 14:40
        0
        Домен верный, файл перекачивал. Продолжают сыпаться ошибки. Но условия работают. В чем еще может быть проблема? И почему ошибки сыпятся не с запросов не с моего IP?
        1. PunPun
          PunPun Разработчик 1 августа 2018 19:59
          0
          Напишите по контактам.
  6. tols32
    tols32 Клиенты 19 июля 2018 22:54
    0
    Возможно ли условиями удалять и (или) переносить в другую категорию?
    1. PunPun
      PunPun Разработчик 20 июля 2018 05:13
      0
      Нет, нельзя.
  7. MrMalik
    MrMalik Клиенты 19 июля 2018 13:36
    0
    Уровень разработки модуля - БОГ!
    Большая благодарность)
  8. zaifat
    zaifat Клиенты 17 июля 2018 13:37
    0
    А можно ли с помощью этого модуля выводить материалы по нескольким значения доп поля? Например: if xfsearch_name = "вася || петя || дом || хурмян" & шаблон какой-то.
  9. bymerpro
    bymerpro Клиенты 24 июня 2018 03:46
    0
    До 13.0 обновлен? Хочу взять.
    1. PunPun
      PunPun Разработчик 24 июня 2018 08:56
      0
      Да, поддерживает 13.0
  10. Uralbox
    Uralbox Клиенты 11 июня 2018 18:34
    0
    Как с помощью условия скрыть блок из категории с id 9, но важно чтобы этот самый блок отображался в публикациях которые принадлежат категории с id=9 и всем остальным категориям!?
    1. PunPun
      PunPun Разработчик 12 июня 2018 07:34
      0
      Модулем
      [if category=9 && dle_module=showfull]твой блок[/if]
      DLE методом
      [category=9][aviable=showfull]твой блок[/aviable][/category]
  11. blacksta92
    blacksta92 Клиенты 5 июня 2018 08:20
    0
    Доброго времени суток!

    Данный хак работает в реальном времени? Допустим в addnews.tpl, если поле-1 (данное доп поле к слову будет в виде "select" выпадающий список) равна "значение1" то, далее подгрузит "поле-2", а если равна "значение2" то, подгрузит "поле-3"
    1. PunPun
      PunPun Разработчик 5 июня 2018 17:28
      0
      Здравствуйте.
      Нет, то что вы описали это обычные js скрипты. А этот модуль не работает в реальном времени так как это происходит на backend а не frontend как вам нужно.
  12. PunPun
    PunPun Разработчик 3 июня 2018 03:43
    0
    Прошу у всех прощения, опять моя ошибка. Я удалял скрытый функционал для дополнительных полей в этом модуле, который не стал документировать, по этому случайно вырезал поддержку и самих дополнительных полей...
    1. morefilms
      morefilms Клиенты 3 июня 2018 08:06
      0
      Спасибо. После обновления мои условия все заработали
  13. Kerncraft1
    Kerncraft1 Клиенты 1 июня 2018 16:29
    0
    Приветствую! Как можно сделать так: Если есть дата редактирования, то выводим ее, а если нет, то выводим дату публикации? Заранее спасибо!
    1. PunPun
      PunPun Разработчик 1 июня 2018 18:23
      1
      [if editdate>0]{edit-date}[else]{date}[/if]
      1. Kerncraft1
        Kerncraft1 Клиенты 2 июня 2018 11:34
        0
        Дата редактирования выводится, но если запись не редактировалась, то дата публикации почему-то не появляется.
      2. Kerncraft1
        Kerncraft1 Клиенты 4 июня 2018 20:23
        0
        Подскажите пожалуйста, почему не выводится дата публикации, если нет даты редактирования?
        1. PunPun
          PunPun Разработчик 4 июня 2018 22:48
          0
          Потому что не было установлено галочки выводить о том что было редактирование. Так именно формируется вывод даты редактирования. Так устроен сам DLE.
© PunPun. 2018. При копировании, ссылка на источник обязательна.
Дизайн и верстка: Webrambo