Например, в публичной части сайта нужно редактировать определённый компонент, но штатного вызова в Битрикс нет.
$from_module='message'; //модуль
$return_url=rawurlencode($APPLICATION->GetCurPageParam()); //текущая страница (страница вызова)
$url='/bitrix/admin/message_edit.php'; //страница компонента в админке битрикс
$get='?lang='.LANGUAGE_ID.'&ID='.$ID;// параметры в url, которые указываются при редактировании элемента
$baza='&bxpublic=Y&from_module='.$from_module.'&return_url='.$return_url; //показываем только область настройки, т.е. убираем лишнее страницы
$content_url=$url.$get.$baza; //собираем в кучу url
<span class="edit-<?=$ID?>" title="Изменить" onClick="javascript:(new BX.CAdminDialog({
'content_url':'<?=$content_url?>',
'width':'700',
'height':'400'})).Show();">Кнопка</span>
Диалоговые окна
Выводим во всплывающем окне (диалоговом окне) в публичной части сайта настройки компонента
9 марта 2023 0:00