33  /  36

Установка иконки мастера настройки сайта

Просмотров: 24559
Дата последнего изменения: 23.09.2021
Сложность урока:
3 уровень - средняя сложность. Необходимо внимание и немного подумать.
1
2
3
4
5

Иконку мастера настройки сайта лучше всего добавлять в файле модуля include.php. Для этого в класс нужно добавить функцию (пример из модуля bitrix.sitepersonal):

function ShowPanel()
{
	if ($GLOBALS["USER"]->IsAdmin() && COption::GetOptionString("main", "wizard_solution", "", SITE_ID) == "personal")
	{
		$GLOBALS["APPLICATION"]->AddPanelButton(array(
		    "HREF" => "/bitrix/admin/wizard_install.php?lang=".LANGUAGE_ID."&wizardName=bitrix:demo_personal&wizardSiteID=".SITE_ID."
                     &".bitrix_sessid_get(),
			"ID" => "demo_personal_wizard",
			"ICON" => "bx-panel-site-wizard-icon",
			"MAIN_SORT" => 2500,
			"TYPE" => "BIG",
			"SORT" => 10,					
			"ALT" => GetMessage("SPER_BUTTON_DESCRIPTION"),
			"TEXT" => GetMessage("SPER_BUTTON_NAME"),
			"MENU" => array(),
		));
	}
}

Как видно из кода, сначала проверяется наличие администраторских прав и параметр wizard_solution из модуля main для конкретного сайта (должен устанавливаться в мастере создания сайта). Если условие проходит, то вызывается стандартный метод AddPanelButton. Ссылка в параметре HREF содержит пространство имен и название мастера, который нужно запустить для текущего сайта (параметр wizardName=bitrix:demo_personal). Из параметров можно отметить:

  • "TYPE" => "BIG" – иконка большая, занимающая всю высоту панели управления. Если не установлен, то иконка занимает лишь одну из трех строк.
  • "ICON" => "bx-panel-site-wizard-icon" – подставляет стандартную картинку, в данном случае для большой иконки мастера. Альтернатива параметру SRC. Для маленькой иконки можно использовать значение "icon-wizard".
  • "TEXT" => GetMessage("SPER_BUTTON_NAME") – подпись рядом либо под иконкой (зависит от ее типа).
1
Курсы разработаны в компании «1С-Битрикс»

Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.
Развернуть комментарии