среда, 25 ноября 2009 г.

Условные выражения Vbulletin Conditionals

Список полезных условных выражений для Vbulletin:


Рассмотрим некоторые условия, применяемые в шаблонах форумного движка vBulletin.


1. Как установить условие для показа некоторой информации только для одной группы пользователей.

2. Как установить условие для показа некоторой информации только для нескольких групп пользователей.


<if condition="is_member_of($bbuserinfo, X, Y, Z)">
</if>

3. Установка условия только для одного пользователя (по user id).


<if condition="$bbuserinfo[userid] == X">

</if>

4. То же самое для нескольких пользователей.


<if condition="in_array($bbuserinfo[userid], array(X,Y,Z))">
</if>

5. Скрыть инфу только от 1 группы.


<if condition="!is_member_of($bbuserinfo, X)">
</if>

6. От нескольких групп пользователей vBulletin информацию можно скрыть так:


<if condition="!is_member_of($bbuserinfo, X, Y, Z)">

</if>

7. Скрыть от одного пользователя форума.


<if condition="$bbuserinfo[userid] == X">
</if>

8. Скрыть от некоторых:


<if condition="!in_array($bbuserinfo[userid], array(X,Y,Z))">
</if>

9. Как показать текст только в каком-то разделе форума?


<if condition="$forumid == X">

</if>

10. В нескольких разделах форума информацию показывают так:


<if condition="in_array($forumid, array(X,Y,Z))">
</if>

11. Скрытие в 1 форуме


<if condition="$forumid != X">
</if>

12. Скрыть в нескольких разделах форума на vBulletin:


<if condition="!in_array($forumid, array(X,Y,Z))">

</if>


13. Условие $show['popups']

Некоторые браузеры не могут использовать систему vBMenu. Для этого имеется условие $show['popups']. С ним мы можем предотвратить попытку инициализации такого кода. Ошибки JavaScript теперь не будут иметь место, а показываться будет альтернативный HTML-код.


<if condition="$show['popups']">

<!-- Здесь контент для браузеров, которые могут использовать систему vBMenu -->

<else>

<!-- Здесь контент для браузеров, которые НЕ могут использовать сплывающие окна vBMenu -->

</else>
</if>


14. Показать что-то только для определённого стиля (шаблона) можно так:


<if condition="$bbuserinfo[styleid]==x">
<!-- Здесь содержимое для стиля с идентификатором 'x' -->
</if>


Обычно на практике бывает полезно разбираться в этих вещах, так как в любом шаблоне vBulletin этих уловий очень много, и, как правило, они вложены друг в друга, что возволяет писать многоступенчатые проверки.