Условия в шаблонах XenForo 2

Условия в шаблонах XenForo 2

Представляю список условий, которые можно использовать в шаблонах #XenForo. Все возможные условия перечислить затруднительно, потому что существует множество различных вариантов фильтрации и выборки информации. Здесь представлены наиболее популярные варианты.

С этой статьи я начинаю попытку восстановления накопленных данных за период моей деятельности в качестве исследователя и разработчика веб-приложений.

Условия в шаблонах

  1. Отображение информации только администраторам.
1
2
3
<xf:if is="$xf.visitor.is_admin">
  <!-- content -->
</xf:if>
  1. Отображение информации только модераторам.
1
2
3
<xf:if is="$xf.visitor.is_moderator">
  <!-- content -->
</xf:if>
  1. Отображение информации только администраторам и модераторам.
1
2
3
<xf:if is="$xf.visitor.is_admin OR $xf.visitor.is_moderator">
  <!-- content -->
</xf:if>
  1. Отображение информации только зарегистрированному пользователю
1
2
3
<xf:if is="$xf.visitor.user_id">
  <!-- content -->
</xf:if>
  1. Отображение информации гостю.
1
2
3
<xf:if is="!$xf.visitor.user_id">
  <!-- content -->
</xf:if>
  1. Отображение разной информации зарегистрированному пользователю и гостю.
1
2
3
4
5
<xf:if is="!$xf.visitor.user_id">
  <!-- content for members -->
<xf:else />
  <!-- content for guests -->
</xf:if>
  1. Отображение информации только заблокированным пользователям.
1
2
3
<xf:if is="$user.is_banned">
  <!-- content -->
</xf:if>
  1. Отображение информации только если у пользователя симпатий больше определённого количества.
1
2
3
<xf:if is="$user.like_count|number > X">
  <!-- content -->
</xf:if>
  1. Отображение информации только если у пользователя сообщений больше определённого количества.
1
2
3
<xf:if is="{$xf.visitor.message_count|number} > X">
  <!-- content -->
</xf:if>
  1. Отображение информации только если у пользователя очков больше определённого количества.
1
2
3
<xf:if is="$user.trophy_points|number > X">
  <!-- content -->
</xf:if>
  1. Отображение информации определённому пользователю.
1
2
3
<xf:if is="$xf.visitor.user_id == X">
  <!-- content -->
</xf:if>
  1. Отображение информации определённым пользователям.
1
2
3
<xf:if is="in_array($xf.visitor.user_id, [X, Y, Z])">
  <!-- content -->
</xf:if>
  1. (1) Отображение информации определённым группам пользователей.
1
2
3
<xf:if is="{{$xf.visitor.isMemberOf([X, Y])}}">
  <!-- content -->
</xf:if>
  1. (2) Отображение информации определённой группе пользователей.
1
2
3
<xf:if is="{{$xf.visitor.isMemberOf(X)}}">
  <!-- content -->
</xf:if>
  1. (1) Скрытие информации от определённых групп пользователей.
1
2
3
<xf:if is="{{!$xf.visitor.isMemberOf([X, Y])}}">
  <!-- content -->
</xf:if>
  1. (2) Скрытие информации от определённой группы пользователей.
1
2
3
<xf:if is="{{!$xf.visitor.isMemberOf(X)}}">
  <!-- content -->
</xf:if>
  1. (1) Отображение информации после первого сообщения в теме.
1
2
3
<xf:if is="$post.position % $xf.options.messagesPerPage == 0">
  <!-- content -->
</xf:if>
  1. (2) Отображение информации через определённое количества сообщений.
1
2
3
<xf:if is="$post.position % $xf.options.messagesPerPage == X">
  <!-- content -->
</xf:if>
  1. Отображение информации на странице, на которой присутствует боковая панель.
1
2
3
<xf:if is="$sidebar">
  <!-- content -->
</xf:if>
  1. Отображение информации на главной (домашней) странице форума.
1
2
3
<xf:if is="$template == 'forum_list'">
  <!-- content -->
</xf:if>
  1. Скрытие информации только с главной (домашней) странице форума.
1
2
3
<xf:if is="$template !== 'forum_list'">
  <!-- content -->
</xf:if>
  1. Отображение информации на странице создания новой темы.
1
2
3
<xf:if is="$template == 'forum_post_thread'">
  <!-- content -->
</xf:if>
  1. Скрытие информации на странице создания новой темы.
1
2
3
<xf:if is="$template != 'forum_post_thread'">
  <!-- content -->
</xf:if>
  1. Отображение информации на странице создания нового ресурса.
1
2
3
<xf:if is="$template == 'xfrm_category_add_resource'">
  <!-- content -->
</xf:if>
  1. Скрытие информации на странице создания нового ресурса.
1
2
3
<xf:if is="$template != 'xfrm_category_add_resource'">
  <!-- content -->
</xf:if>
  1. Отображение информации на странице поисковой формы.
1
2
3
<xf:if is="$template == 'search_form'">
  <!-- content -->
</xf:if>
  1. Скрытие информации на странице поисковой формы.
1
2
3
<xf:if is="$template != 'search_form'">
  <!-- content -->
</xf:if>
  1. Отображение информации на странице “Что нового?”.
1
2
3
<xf:if is="$template == 'whats_new'">
  <!-- content -->
</xf:if>
  1. Скрытие информации на странице “Что нового?”.
1
2
3
<xf:if is="$template != 'whats_new'">
  <!-- content -->
</xf:if>
  1. Отображение информации на странице просмотра личной переписки.
1
2
3
<xf:if is="$template == 'conversation_view'">
  <!-- content -->
</xf:if>
  1. Скрытие информации на странице просмотра личной переписки.
1
2
3
<xf:if is="$template != 'conversation_view'">
  <!-- content -->
</xf:if>
  1. Отображение информации на странице просмотра списка личных переписок.
1
2
3
<xf:if is="$template == 'conversation_list'">
  <!-- content -->
</xf:if>
  1. Скрытие информации на странице просмотра списка личных переписок.
1
2
3
<xf:if is="$template != 'conversation_list'">
  <!-- content -->
</xf:if>
  1. Отображение информации на главной странице ресурсов.
1
2
3
<xf:if is="$template == 'xfrm_overview'">
  <!-- content -->
</xf:if>
  1. Скрытие информации на главной странице ресурсов.
1
2
3
<xf:if is="$template != 'xfrm_overview'">
  <!-- content -->
</xf:if>
  1. Отображение информации на странице просмотра ресурса.
1
2
3
<xf:if is="$template == 'xfrm_resource_view'">
  <!-- content -->
</xf:if>
  1. Скрытие информации на странице просмотра ресурса.
1
2
3
<xf:if is="$template != 'xfrm_resource_view'">
  <!-- content -->
</xf:if>
  1. Отображение информации на странице просмотра темы.
1
2
3
<xf:if is="$template == 'thread_view'">
  <!-- content -->
</xf:if>
  1. Скрытие информации на странице просмотра темы.
1
2
3
<xf:if is="$template !='thread_view'">
  <!-- content -->
</xf:if>
  1. Отображение информации на странице просмотра форума (раздела).
1
2
3
<xf:if is="$template =='forum_view'">
  <!-- content -->
</xf:if>
  1. Скрытие информации на странице просмотра форума (раздела).
1
2
3
<xf:if is="$template != 'forum_view'">
  <!-- content -->
</xf:if>
  1. Отображение информации “наказанным” пользователям.
1
2
3
<xf:if is="{$xf.visitor.Option.is_discouraged}">
  <!-- content -->
</xf:if>
  1. Отображение информации пользователям, которые имеют Gravatar.
1
2
3
<xf:if is="{$xf.visitor.gravatar}">
  <!-- content -->
</xf:if>
  1. Отображение информации пользователям поддержки форума.
1
2
3
<xf:if is="{$xf.visitor.is_staff}">
  <!-- content -->
</xf:if>
  1. Отображение информации пользователям без подтверждённого адреса e-mail.
1
2
3
<xf:if is="{$xf.visitor.isAwaitingEmailConfirmation()}">
  <!-- content -->
</xf:if>
  1. Отображение информации в нескольких форумах (разделах).
1
2
3
<xf:if is="in_array({$forum.node_id}, [X, Y, Z])">
  <!-- content -->
</xf:if>
  1. Скрытие информации в нескольких форумах (разделах).
1
2
3
<xf:if is="in_array($forum.node_id, [X, Y, Z])">
  <!-- content -->
</xf:if>
  1. Отображение информации в определённом форуме (разделе).
1
2
3
<xf:if is="$forum.node_id == X">
  <!-- content -->
</xf:if>
  1. Скрытие информации в определённом форуме (разделе).
1
2
3
<xf:if is="$forum.node_id != 3">
  <!-- content -->
</xf:if>
  1. Отображение информации только после первого сообщения в каждой теме.
1
2
3
<xf:if is="{$post.position} % {$xf.options.messagesPerPage} == 1">
  <!-- content -->
</xf:if>
  1. Отображение информации только внутри первого сообщения в каждой теме.
1
2
3
<xf:if is="{$post.position} % {$xf.options.messagesPerPage} == 0">
  <!-- content -->
</xf:if>
  1. Отображение информации только при заполненном поле местоположения.
1
2
3
<xf:if is="{$xf.visitor.location}">
  <!-- content -->
</xf:if>
  1. Отображение информации только при заполненном поле веб-сайта.
1
2
3
<xf:if is="{$xf.visitor.website}">
  <!-- content -->
</xf:if>
  1. Отображение информации при указанной подписи.
1
2
3
<xf:if is="{$xf.visitor.signature}">
  <!-- content -->
</xf:if>
  1. Отображение информации только активированным пользователям.
1
2
3
<xf:if is="{$xf.visitor.user_state} == 'valid'">
  <!-- content -->
</xf:if>
  1. Отображение информации только пользователям, ожидающим подтверждения адреса e-mail.
1
2
3
<xf:if is="{$xf.visitor.user_state} == 'email_confirm_edit'">
  <!-- content -->
</xf:if>
  1. Отображение информации только пользователям с проблемным адресом e-mail.
1
2
3
<xf:if is="{$xf.visitor.user_state} == 'email_bounce'">
  <!-- content -->
</xf:if>
  1. Отображение информации, если ID пользователя = ID автора темы.
1
2
3
<xf:if is="{$__globals.thread} AND {$__globals.thread.user_id} == {$user.user_id}">
  <!-- content -->
</xf:if>
  1. Отображение информации пользователю, который является автором темы.
1
2
3
<xf:if is="{$thread.user_id} == {$xf.visitor.user_id}">
  <!-- content -->
</xf:if>

Источники:

Категории
Авторы
Мета
Лицензия
ID файла
UUID
Системный путь
Тип
Статистика
Количество слов
Время чтения
мин.