В случае когда необходимо отображать информацию только на главной странице, на помощь приходит Bitrix API. Рассмотрим несколько случаев, в которых вам стоит применять подобные проверки.

Вывод информации только на главной странице в Битриксе

Перейдем от долгих вступлений сразу к делу. Собственно код:

<?if($APPLICATION->GetCurPage() == "/"):?>
<!-- текст или компонент -->
<?endif;?>

Или такой вариант:

<?if($APPLICATION->GetCurPage() == "/index.php"){
#ваш код
}?>

Большой разницы быть не должно. Вместо GetCurPage() можем попробовать GetCurDir():

<?if($APPLICATION->GetCurDir() == "/") {}?>

Как отобразить информацию везде кроме главной страницы

В новых шаблона Битрикса встречается следующий вариант:

<?$curPage = $APPLICATION->GetCurPage(true);?>
<?if ($curPage != SITE_DIR."index.php"):?>
<h1><?=$APPLICATION->ShowTitle(false);?></h1>
<?endif?>

Но я обычно использовал в этих случаях более короткую запись:

<?if($APPLICATION->GetCurPage() != "/"){?>
<?}?>

Какой вариант использовать — это уже на ваше усмотрение.

1С-Битрикс: Как отображать информацию на определенном разделе

Рассмотрим пример, когда нужно показывать информацию не только в разделе ‘catalog’, но и на его внутренних разделах и страницах (то есть, на всех страницах, в урле которых встречается /catalog/):

<?
$p1 = "/catalog/";
if (strstr($APPLICATION->GetCurDir(), $p1)) {?>
<!-- ваш код -->
<?}?>

где, $p1 — ваш раздел, а strstr — проверяет первое вхождение подстроки.

Документация PHP рекомендует использовать в таких случаях strpos вместо strstr.

Но есть и нормальное решение. Но работает исключительно с папками:

<?if(CSite::InDir('/about/')) {

}?>

Ну и что касается вывода информации на разделе, можем использовать следующий код:

<?if ($APPLICATION->GetCurDir() == "/catalog/") {?>
<!-- ваш код -->
<?}?>

Кстати говоря, такого рода проверка, встречалась мне и на других сайтах написанных на 1С-Битрикс. Ее использовали, чтобы задать мета-свойства для разделов, выведенных с помощью модуля новости.

Источник: http://forwww.com/bitrix-how-to-show-information-on-the-main-page/

⤧  Next post Как задавать мета свойства в 1С-Битрикс ⤧  Previous post Приятная сборка front-end проекта