Insom84
@Insom84

Присвоить div'у класс если открыта главная страница Bitrix?

Есть 2 элемента div с id="one" и с id="two" как присвоить им классы, если открыта главная страница сайта (например классы "red" для дива с id="one "и класс "green" для дива с id="two" соответственно)?
Я так понимаю условие выглядит так:
<? if ($APPLICATION->GetCurPage(false) === '/'): ?>
.....
<? endif; ?>

подскажите пожалуйста, что в нем должно быть?
  • Вопрос задан
  • 196 просмотров
Пригласить эксперта
Ответы на вопрос 2
@ivashjke
Vue JS, React, React Native
$mainPageClass = "/" === $APPLICATION->GetCurPage(false) ? " red green " : ""
echo '<div id="one" class="someClass' , $mainPageClass, '"></div>';
Ответ написан
Ужасный способ - никогда так не делайте.
Таким подходом вы превращаете систему управления контентом в систему управления страницами.

Какая разница по какому URL открыта ваша страница? Страница должна открываться корректно в независимости от url.

Если ваши div внутри этой страницы - просто пропишите им классы.

Если ваши div внутри какого-то компонента который вызывается из скрипта страницы и из других мест - просто добавьте в компонента параметр в котором передавайте дополнительный класс.

Если ваши div лежат за пределами скрипта страницы (я так подозреваю что это скорее всего ваш случай) используйте отложенные функции:

<div id="one" class="someClass <?=$APPLICATION->ShowProperty('color_class')?>">


И в странице:
<?require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
$APPLICATION->SetPageProperty('color_class', 'green');
?>
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы