vBulletin это самый лучший скрипт для форумов, который когда-либо был написан. Наш форум использует vBulletin и я уверен, что каждый из вас, посещая различные форумы, уже успел убедиться в том, что vBulletin просто великолепен. Можно много говорить о пользовательском интерейсе, о его удобстве и многочисленных функциях, но возможности, открытые модераторам и администраторам, - просто фантастические!
Одна из замечательных функций vBulletin - это возможность использовать
PHP-like -[if]-conditionals прямо в шаблонах, и при известной фантазии каждый администратор в силах буквально преобразить форум. В оригинальной документации vBulletin об этом говорится совсем немного, но как и у любого open source продукта, у vBulletin емеется великое множество поклонников, которые читают его код как интересную книгу. Большинство из перечисленного ниже было собрано в интернете и, по сути, является коллективной собственностью. Пользуйтесь на здоровье! И знайте, это далеко не все!
- Показываем что-то только зарегистрированным пользователям:
Code:
<if condition="$show['member']">ваш текст</if>
- Показываем что-то только членам определенных групп:
через запятую перечисляем необходимые нам группы пользователей
Code:
<if condition="is_member_of($vbulletin->userinfo, 1, 2, 3)">ваш текст</if>
- если текущий скрипт является (или не является) тем или иным скриптом (к примеру - search.php или showthread.php ): это условие можно использовать только в шаблоне Forumhome
если вы не уверены, как правильно называется вызываемый скрипт, то его всегда можно опознать по PHP коду, к примеру, как здесь:
define('THIS_SCRIPT', 'showthread');
стало быть, если условие выполнено, следует использовать:
Code:
<if condition="THIS_SCRIPT == 'index'">ваш текст</if>
если условие НЕ выполнено, следует использовать:
Code:
<if condition="THIS_SCRIPT != 'index'">ваш текст</if>
- Показываем что-то только конкретному пользователю:
Code:
<if condition="$bbuserinfo['userid'] ==ХХХ">ваш текст</if>
или показываем всем остальным, но ТОЛЬКО НЕ ему:
Code:
<if condition="$bbuserinfo['userid'] != ХХХ">ваш текст</if>
- Показываем что-то только гостям форума (или не авторизованным):
Code:
<if condition="$show['guest']">ваш текст</if>
- Показываем что-то только внутри определенного форума
Code:
<if condition="$forum[forumid] == X">ваш текст</if>
или показываем что-то везде, кроме определенного форума:
Code:
<if condition="$forum[forumid] != X">ваш текст</if>
- Показываем что-то только внутри нескольких определенных форумов
Code:
<if condition="in_array($forum['forumid'], array(1,2,3,7))">ваш текст</if>
- Показываем что-то только определенной группе пользователей:
Code:
<if condition="$post['usergroupid'] == Х">ваш текст</if>
или показываем всем, но ТОЛЬКО НЕ этой группе пользователей:
Code:
<if condition="$post['usergroupid'] != Х">ваш текст</if>
- Показываем что-то только для пользователей, которые старше или младше определенного возраста:
Code:
<if condition="$bbuserinfo['birthday_search'] > 'MM-DD- YYYY'">молодой</if>
Code:
<if condition="$bbuserinfo['birthday_search'] < 'MM-DD- YYYY'">старый</if>
- Показываем что-то только внутри опреленной темы в определенном форуме:
Code:
<if condition="$thread['forumid'] == X">ваш текст</if>
и - наоборот:
Code:
<if condition="$thread['forumid'] != X">ваш текст</if>
- а это случай для ГРУППЫ (array) форумов:
Code:
<if conditional="in_array($thread['forumid'], array(1,2,3,6))"></if>
- 1. Показываем что-то, только если пользователь имеет полномочия модератора в этом форуме:
Code:
<if condition="can_moderate()">ваш текст</if>
- 1. Показываем что-то, тлько если пользователь имеет модераторские права ТОЛЬКО В ОПРЕДЕЛЕННОМ форуме:
Code:
<if condition="can_moderate($forum['forumid'])">ваш текст</if>
- Показываем что-то, если пользователь является модератором Х форумов:
Code:
<if condition="can_moderate($forum['x'])"></if>
- Показываем что-то только для автора темы (thread starter):
Code:
<if condition="$threadinfo['postuserid'] == $bbuserinfo['userid']">ваш текст</if>
- Показываем что-то только внутри закрытой темы:
Code:
<if condition="!$show['closethread']">ваш текст</if>
- Показываем что-то только после первого сообщения темы:
Code:
<if condition="!$GLOBALS['FIRSTPOSTID']">ваш текст</if>
- Показываем что-то после определенного количнства сообщений в теме:
Code:
<if condition="$post['postcount'] % $vboptions['maxposts'] == x">ваш текст</if>
- используем If - Else условия:
Code:
<if condition="$show['guest']">
показывать это для гостей
<else />
показывать всем, кроме гостей
</if>
если в вашей коллекции есть что-то еще, пожалуйста, делитесь