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

L

lukamal

#1
В шаблоны можно вставить условия которые позволяют определённым пользователям показывать/не показывать какую-то информацию

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

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

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

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

Mister1

#2
Хочу условие работающее с датой

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

Добавляем хук, в месте где хотим выполнение условия:
Код:
$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>

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

lukamal

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

Добавляем хук, в месте где хотим выполнение условия:
Код:
$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 минуту
Задача которую я хочу решить это различное отображение шапки форума в зависимости от определённых промежутков дат!
 
M

Mister1

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

Хук, иными словами модуль, продукты в 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>
 
L

lukamal

#5
Данный код ошибок не выдаёт, но если поставит временной промежуток не выполняющий условия, то ни чего не происходит.
Видимо даты нужно как-то по другому сравнивать (в другом формате)!
 
L

lukamal

#7
У меня так не проходит переменные в дату не превращаются!
 
L

lukamal

#11
Разобрался как нужно делать.

$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>
 
Get involved!

Here you can only see a limited number of comments. On СЕО Форум Вебмастеров you see all comments and all functions are available to you. To the thread