У меня была такая задача: Не отображать правую колонку на Главной странице и в папках /25/ и /temp/ (в примере - верстка с использованием Bootstrap).
Решил вот таким образом:
Код |
---|
<div class="row">
<?if (CSite::InDir(SITE_DIR.'index.php') || CSite::InDir('/25/') || CSite::InDir('/temp/')):?>
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<?else:?>
<div class="col-xs-12 col-sm-12 col-md-8 col-lg-8">
<?$APPLICATION->IncludeComponent("bitrix:breadcrumb", "template_01", Array(
"START_FROM" => "1",
"PATH" => "",
"SITE_ID" => "s4",
),
false
);?>
<h2 id="pagetitle"><?=$APPLICATION->ShowTitle(false);?></h2>
<?endif?>
#WORK_AREA#<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();IncludeTemplateLangFile(__FILE__);?>
</div>
<?if (!CSite::InDir(SITE_DIR.'index.php') && !CSite::InDir('/25/') && !CSite::InDir('/temp/')):?>
<div class="col-xs-12 col-sm-12 col-md-4 col-lg-4">
<?$APPLICATION->IncludeComponent("bitrix:main.include", ".default", array(
"AREA_FILE_SHOW" => "page",
"AREA_FILE_SUFFIX" => "inc_r",
"EDIT_TEMPLATE" => "page_inc_r.php"
),
false
);?>
<?$APPLICATION->IncludeComponent("bitrix:main.include", ".default", array(
"AREA_FILE_SHOW" => "sect",
"AREA_FILE_SUFFIX" => "inc_r",
"AREA_FILE_RECURSIVE" => "Y",
"EDIT_TEMPLATE" => "sect_inc_r.php"
),
false
);?>
</div>
<?endif?>
</div>
|
То есть, основная конструкция вот такая для
отображения:
Код |
---|
<?if (CSite::InDir(SITE_DIR.'index.php') || CSite::InDir('/25/') || CSite::InDir('/temp/')):?>
Контент 1
<?else:?>
Контент 2
<?endif?>
|
Для
скрытия:
Код |
---|
<?if (!CSite::InDir(SITE_DIR.'index.php') && !CSite::InDir('/25/') && !CSite::InDir('/temp/')):?>
Контент 3
<?endif?>
|
Если где ошибка или имеется лучшее решение, прошу прокомментировать.