Пользовательские шаги
Несмотря на то, что последовательность шагов в мастере создания сайта фиксированная, имеется возможность вставить между стандартными шагами свои пользовательские шаги. Пользовательские шаги делятся на 2 группы: шаги выбора и шаги установки. Пользовательские шаги выбора – шаги, идущие после шагов Выбор типа сайта, Выбор шаблона, Выбор сервисов. Пользовательские шаги установки – шаги, идущие после шагов Установка сайта, Установка шаблона, Установка сервиса.
В массивах $arWizardSites, $arWizardTemplates, $arWizardServices (файлы .sites.php, .templates.php, .services.php соответственно) для описания пользовательских шагов существуют 2 ключа: "SELECT_STEPS" и "INSTALL_STEPS". Ключ "SELECT_STEPS" описывает пользовательские шаги выбора, "INSTALL_STEPS" – пользовательские шаги установки.
Типичное описание пользовательских шагов:
"SELECT_STEPS" => массив, описывающий дополнительные шаги Array( "SCRIPT" => путь к файлу с классами шагов относительно папки мастера "STEPS" => массив шагов, добавляемых в мастер Array( "ID шага 1" => "Имя класса шага 1", "ID шага 2" => "Имя класса шага 2", … ) )
В файле, указанном в ключе "SCRIPT", необходимо описать (подробнее см. Определение шагов мастера) классы шагов, добавляемых в мастер создания сайта. Число добавляемых шагов неограниченно. Если количество добавляемых шагов превышает один шаг, то необходимо учитывать следующее правило описания пользовательских шагов в ключе "STEPS":
- Первый элемент массива шагов является первым шагом цепочки пользовательских шагов. Именно на него будет ссылаться кнопка Далее в стандартных шагах.
- Последний элемент массив является последним шагом цепочки пользовательских шагов. Именно на него будет ссылаться кнопка Назад в стандартных шагах.
Кроме того, шаги Приветствие, Готовность к установке, Установка завершена, Установка прервана можно полностью подменить на собственные пользовательские шаги. Для этого необходимо в ключах CLASS и SCRIPT массива $arWizardDescription указать имя класса и путь к файлу, в котором определён класс, соответственно. Подробнее см. файл описания мастера создания сайта .description.php.