Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Запрет редактирования компонента

00 голосов
2
Здравствуйте.
В режиме редактирования контента везде, где встречается в коде страницы какой-нибудь инклюд а-ля <?$APPLICATION->IncludeFile("news/index.php");?>, во фронт-офисе в соответствующих местах наблюдаются иконки Рисунок. Необходимо, чтобы некоторые из компонентов были недоступны для редактирования.
Думал, что поможет параметр SHOW_BORDER в значении false:
$APPLICATION->IncludeFile("news/index.php", Array(), Array("SHOW_BORDER" => "false"));
Но иконка все равно отображается.
Каким образом можно ее отключить?
спросил 21 Янв, 14 от GodWols (100 баллов)

2 Ответы

00 голосов
Дмитрий Зубков,
Вот на примере компонента регистрации, две строчки в конце решают Ваш вопрос ($component и array("HIDE_ICONS" => "Y").
Код
<?$APPLICATION->IncludeComponent(
   "bitrix:main.register",
   "wk",
   Array(
      "SHOW_FIELDS"   =>   array(
         0   =>   "NAME",
         1   =>   "LAST_NAME",
         2   =>   "WORK_STREET",
         3   =>   "WORK_CITY",
      ),
      "REQUIRED_FIELDS"   =>   array(
         0   =>   "NAME",
         1   =>   "LAST_NAME",
         2   =>   "WORK_STREET",
         3   =>   "WORK_CITY",
      ),
      "SEF_MODE"   =>   "N",
      "SEF_FOLDER"   =>   "/user/",
   ),
   $component,
   array("HIDE_ICONS" => "Y")
);?>
ответил 14 Май, 14 от Stalkerr (280 баллов)
00 голосов
Извиняюсь, что смутил Вас словом "компонент" - это действительно происходит в шаблоне компонента, но интересует не запрет отображения
<?$APPLICATION->IncludeComponent();?>
а запрет отображения редактирования
<?$APPLICATION->IncludeFile();?>

Если более подробно, то в шаблоне компонента у меня инклюдится с помощью <?$APPLICATION->IncludeFile();?> файл и потом в режиме редактирования сайта я наблюдаю такую картину:

Рисунок

Мне нужна только иконка №1. А иконка №2 отображается только потому, что в коде встречается инклюд, хотя мне этого не надо...

Есть пару простых решений типа - не инклюдить файл, а включить код в шаблон компонента, но это не удобно, потому что нужно во многих местах проделать эту операцию... Или переделать <?$APPLICATION->IncludeFile();?> в <?$APPLICATION->IncludeComponent();?>, но это тоже не самое грамотное решение имхо. Намного проще и изящнее будет просто запретить отображаться ненужные иконки и рамки. А вот как это сделать?
ответил 11 Сен, 14 от GodWols (100 баллов)

Похожие вопросы

0 голосов
3 ответов
0 голосов
3 ответов
спросил 02 Дек, 13 от Juliette (320 баллов)
0 голосов
1 ответ
спросил 23 Авг, 13 от Exet (380 баллов)
0 голосов
3 ответов