My photo
My photo

РАДЬКО ПЕТР CMTV

Возраст 21
Откуда Россия
Сфера интересов: программирование (web, android, unity), создание и развитие сетевых сообществ. Мое кредо — реальные проекты и самообразование. В этом мне помогает свободное владение английским. Люблю делиться тем, что узнал. Излагаю материал просто и наглядно в своих онлайн-учебниках. Мои проекты (на сейчас 41) описаны ниже.

Иконка

Criteria Builder

Декабрь 2018

Стандартный набор критериев XenForo очень скудный. С его помощью нельзя создать по-настоящему уникальные и креативные достижения. Criteria Builder позволяет импортировать/экспортировать критерии также просто, как это делается со смайликами. Кроме того, можно написать собственные критерии на PHP!

Полный контроль из админ-панели

Нет нужды создавать критерии где-то вне форума и подключать их с помощью неудобного «Класс/метод» способа. Можно импортировать, экспортировать и создавать критерии из одного места прямо в админ-панели:

Импорт критериев

Критерии можно импортировать из .xml файла. Сам файл может представлять собой целый набор критериев, загруженных с этого или англоязычного форумов. А возможно вы просто хотите перенести уже готовые критерии с одного своего форума на другой.

Сначала, надо перейти на страницу «Импорт» и выбрать.xml файл с критериями:

Далее, нужно указать, какие из новых критериев импортировать, а какие обновить. Да, код критериев может быть обновлен. Все как с аддонами.

Более того, можно редактировать некоторые значения критериев еще до их импорта:

Использование критериев

После импорта (или создания) критериев, можно использовать их при создании трофея, объявления или повышения прав пользователя:

Создание критериев

Пользователи, знакомые с PHP, могут создавать собственные критерии. Сперва нужно указать базовую информацию о критерии:

После этого, можно писать PHP код прямо в админ-панели. Не нужно создавать .php файлы и загружать их в папку src:

Параметры критерия

Представьте, что вы хотите создать 3 трофея за добавление 1, 15 и 30 закладок на форуме. Чорт, похоже придется создавать три критерия с одинаковым кодом, меняя лишь число закладок…

К счастью, Criteria Builder позволяет создавать «параметры критериев», этакие поля, которые заполняются значениями на этапе создания трофея/объявления и так далее. То есть вы можете использовать один критерий для создания целого класса трофеев, просто меняя значения параметров!

Список параметров критерия:

Получение и использование значения параметра с помощью функции $get(PARAM_NAME):

В Criteria Builder по умолчанию входят 8 типов параметров:

  • Текстовое поле
  • Число
  • Флажок
  • Выбор форума
  • Выбор группы пользователей
  • Выбор префикса темы
  • Выбор реакции
  • Дата и время + часовой пояс

Drag-and-drop сортировка

Установка значений «Порядка отображения» через отдельную страницу уже в прошлом. Теперь можно указать нужный порядок простым перетаскиванием:

Расширяемость

Можно создавать собственные типы параметров. Это настолько же просто, насколько просто создание собственных типов виджетов. Просто включите режим разработчика и создайте свой тип параметра на странице «Params definitions».

Более того, можно использовать евент CMTV_CB_criteria_types и добавить собственный тип критериев в Criteria Builder.