Условия в шаблонах Vbulletin 4.x.x

lukamal

Редактор
Регистрация
30.08.12
Сообщения
803
Реакции
484
Баллы
28
В шаблоны можно вставить условия которые позволяют определённым пользователям показывать/не показывать какую-то информацию

например:
<vb:if condition="$show['guest']"> Показать только гостям. <vb:else /> Показать всем зарегистрированным </vb:if>

Хочу условие работающее с датой
например:

<vb:if condition=>"$datatime['13.12.2013']" and condition<="$datatime['15.01.2014']"> Показать только надпись. </vb:if>

Но ни яндекс ни гугл не помогли в этом вопросе!
 

Mister1

Пользователь
Регистрация
02.03.13
Сообщения
234
Реакции
242
Баллы
28
Адрес
localhost
Хочу условие работающее с датой

Я такое делал для тройки, следующим образом:

Добавляем хук, в месте где хотим выполнение условия:
Код:
$datenow = date("Y-m-d");
$datestart = date("2013-12-10"); // Начальная дата
$dateend = date("2013-12-14");

И вставляем в шаблон условие:
Код:
<if condition="($datenow >= $datestart) AND ($datenow <= $dateend)">
Этот текст виден с $datestart по $dateend
</if>

Для четверки сильно отличатся не будет.
 
Последнее редактирование:

lukamal

Редактор
Регистрация
30.08.12
Сообщения
803
Реакции
484
Баллы
28
Я такое делал для тройки, следующим образом:

Добавляем хук, в месте где хотим выполнение условия:
Код:
$datenow = vbdate(TIMENOW, true); // Получение текущей даты
$datestart = strtotime("2013-12-13"); // Начальная дата
$dateend = strtotime("2013-12-16"); // Конечная дата

И вставляем в шаблон условие:
Код:
<if condition="($datenow > $datestart) AND ($datenow < $dateend)">
Этот текст виден с $datestart по $dateend
</if>

Для четверки сильно отличатся не будет.

Тут как говорится самое трудное начать!
На саппорте читал про хук, но что-то до конца не понятно!

Расскажи как для первоклашки как добавлять хук?

Добавлено через 1 минуту
Задача которую я хочу решить это различное отображение шапки форума в зависимости от определённых промежутков дат!
 

Mister1

Пользователь
Регистрация
02.03.13
Сообщения
234
Реакции
242
Баллы
28
Адрес
localhost
Расскажи как для первоклашки как добавлять хук?

Хук, иными словами модуль, продукты в vBulletin складываются с модулей, посмотреть можно - Продукты и модули - Управление модулями.

Что бы добавить новый модуль Продукты и модули -Добавить новый модуль.

Задача которую я хочу решить это различное отображение шапки форума в зависимости от определённых промежутков дат!

Добавьте новый модуль в global_start
Код:
$datenow = date("Y-m-d");
$datestart = date("2013-12-10"); // Начальная дата
$dateend = date("2013-12-14"); // Конечная дата

<vb:if condition=>"$datatime['13.12.2013']" and condition<="$datatime['15.01.2014']"> Показать только надпись. </vb:if>

Это не правильно составленное условие, должно быть как то так (нет четверки что бы проверить):

Код:
<vb:if condition="($datenow >= $datestart) AND ($datenow <= $dateend)">
Этот текст виден с $datestart по $dateend
</vb:if>
 
Последнее редактирование:

lukamal

Редактор
Регистрация
30.08.12
Сообщения
803
Реакции
484
Баллы
28
Данный код ошибок не выдаёт, но если поставит временной промежуток не выполняющий условия, то ни чего не происходит.
Видимо даты нужно как-то по другому сравнивать (в другом формате)!
 

Mister1

Пользователь
Регистрация
02.03.13
Сообщения
234
Реакции
242
Баллы
28
Адрес
localhost
Последнее редактирование:

lukamal

Редактор
Регистрация
30.08.12
Сообщения
803
Реакции
484
Баллы
28
У меня так не проходит переменные в дату не превращаются!
 

lukamal

Редактор
Регистрация
30.08.12
Сообщения
803
Реакции
484
Баллы
28
Разобрался как нужно делать.

$datenow = date("Y-m-d");
$datestart = date("2013-12-10"); // Начальная дата
$dateend = date("2013-12-17"); // Конечная дата
vB_Template:: preRegister('footer',array('datenow' => $datenow));
vB_Template:: preRegister('footer',array('datestart' => $datestart));
vB_Template:: preRegister('footer',array('dateend' => $dateend));
между двойным двоеточием и preRegister поставил пробел иначе смайлик показывается!

<vb:if condition="($datenow >= $datestart) AND ($datenow <= $dateend)">
Этот текст виден с {vb:raw $datestart} по {vb:raw $dateend}
</vb:if>
 

Статистика форума

Темы
200.482
Сообщения
380.302
Пользователи
327.887
Новый пользователь
Jlij00
Сверху Снизу