Дата последнего изменения: 29.06.2023
Как было отмечено ранее, установщик представляет собой набор стандартных шагов. Они могут генерироваться автоматически на основе файлов описаний или быть заданы в виде классов в файле wizards.php. Рассмотрим второй случай более подробно.
Файл wizards.php представляет собой набор шагов установки, которые могут как вызывать шаги стандартного мастера, так и переопределять их. Файл должен начинаться с подключения стандартного мастера:
require_once($_SERVER['DOCUMENT_ROOT']."/bitrix/modules/main/install/wizard_sol/wizard.php");
Сами шаги представляют собой классы, наследующиеся от классов стандартного мастера. Минимальная запись выглядит так:
class SelectTemplateStep extends CSelectTemplateWizardStep { }
Эта запись означает, что при установке присутствует шаг Выбор шаблона, со стандартной реализацией.
Для переопределения какого-либо шага необходимо перегрузить соответствующий метод.
class SelectThemeStep extends CSelectThemeWizardStep { function InitStep() { ….................... } function OnPostForm() { ….................... } function ShowStep() { ….................... } }
В соответствии с названиями, эти методы отвечают за инициализацию, показ шага и обработку результатов шага после перехода по кнопке Далее.
Для вызова шага родителя в этом случае используется объект parent.
Пример стандартного шага выбора темы с установкой своего подзаголовка:
class SelectThemeStep extends CSelectThemeWizardStep { function InitStep() { parent::InitStep(); $this->SetSubTitle(GetMessage('SELECT_THEME_SUBTITLE')); } }
\bitrix\modules\main\install\wizard_sol\utils.php
.
Также можно не использовать файл .template.php, а указать значение сортировки в файле описания шаблона.