vBulletin. Создание модулей. Настройки модуля.

Когда вы расширяете функционал форума, то в большинстве случаев вам будет не хватать только программной части - бывает ещё необходимо администраторам давать хоть какие то рычаги для настройки поведения вашего модуля.

Я не смог найти как можно добавить настройки в самой панели управления при разработке модуля, но я опишу как можно добавить настройки в xml файле модуля.

И так, по мимо самой настройки, вам ещё понадобятся фразы для её отображения:

  1. Заголовок раздела настроек
  2. Название переменной
  3. Описание переменной

Второй и третий пункт нужен для каждой переменной. Первый пункт может вроде как отсутствовать, тогда вам просто необходимо добавить настройку в существующий пункт. Но я вам не рекомендую мешать всё в одну кучу. Третий пункт можно опустить, но с ним всё же будет понятнее пользователям-администраторам.

Добавление переменной

И так, начнём. Работаем с XML-кой. Добавляем в раздел options элемент settinggroup который символизирует нашу группу настроек:

<options>
    <settinggroup name="foomodule" displayorder="10000">
        <!-- В этом месте будут настройки -->
    </settinggroup>
</options>

foomodule - это название вашего модуля

10000 - это значение для сортировки при выводе групп настроек

Группу мы добавили, теперь добавляем сами настройки:

<options>
    <settinggroup name="foomodule" displayorder="10000">
        <setting varname="foomodule_bar" displayorder="5">
            <datatype>number</datatype>
            <defaultvalue>300</defaultvalue>
        </setting>
    </settinggroup>
</options>

foomodule_bar - название настройки (имя переменной)

5 - значение для сортировке настроек при выводе группы

number - тип данных

300 - значение по умолчанию

Добавление фраз

Теперь переходим к фразам. Работаем с разделом phrases.

<phrases>
    <phrasetype name="vBulletin Settings" fieldname="vbsettings">
        <phrase name="settinggroup_foomodule" date="0" username="" version=""><![CDATA[Наименование группы настроек]]></phrase>
        <phrase name="setting_foomodule_bar_title" date="0" username="" version=""><![CDATA[Описание переменной]]></phrase>
        <phrase name="setting_foomodule_bar_desc" date="0" username="" version=""><![CDATA[Название переменной]]></phrase>
    </phrasetype>
</phrases>

Для красоты и внутренней гармонии так же необходимо заполнить значения date, username и version, для каждой фразы.

Всё, теперь после установки модуля у вас добавится переменная $vbulletin->options['foomodule_bar'] которую вы так же можете использовать у себя в модуле по своему усмотрению.

Типы данных настроек

  • number - Число
  • free - любое значение, больше подходит к строкам
  • boolean - логическое, 1 или 0

Автор: Сергей Степанов

Поделиться @
aaa, 28 декабря 2022 в 21:13