@graf1899

Как в Битрикс запретить вывод элемента на определенных страницах?

Здравствуйте!
Возник такой вопрос.
Есть шаблон Битрикс, есть элемент (bitrix/templates/.default/components/bitrix/menu/left/template.php)
Сейчас он выводится почти на всех страницах, мне не нужно чтобы он вылизал на страницах: О компании, Вакансии, Новости, Публикации.
  • Вопрос задан
  • 1026 просмотров
Пригласить эксперта
Ответы на вопрос 2
@kudis
Bitrix developer
Оберни вызов компонента в условия:
например:
if ($APPLICATION->GetCurDir() !== '/about/') {}
если нужно с подразделами:
if (substr('/vacancies/', $APPLICATION->GetCurDir()) === 0) {}

или условие посложнее:
if (preg_match('/^\/news\/[\d]+\/.*/', $APPLICATION->GetCurDir()) === 1 ) {}
Ответ написан
Дайте я попробую переформулировать ваш вопрос:
У вас есть меню и в этом меню есть пункт который не должен отображаться на некоторых страницах (или наоборот - должен отображаться на некоторых - вот тут я не очень понял).
Вообще говоря обычно это означает что у вас меню выполняет не свойственную ему роль. Т.е. если сложилась такая необходимость то скорее всего у вас уже что-то пошло не так. Но бывает конечно по разному...
1 Не трогайте шаблон (файл bitrix/templates/.default/components/bitrix/menu/left/template.php)
2 Обратитетсь непосредственно к файлу меню - последней элемент массива пункта - это метод который регулирует отображением пункта - https://dev.1c-bitrix.ru/learning/course/index.php...

Есть еще вариант - вы говорите не о пункте меню, а о компоненте. Тут совсем просто - разместите его только на тех страницах где он должен выводиться.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
22 нояб. 2024, в 00:55
500 руб./за проект
21 нояб. 2024, в 23:30
300000 руб./за проект
21 нояб. 2024, в 22:21
3000 руб./в час