Показывать блок только на главной странице
Мы рассматривали несколько случаев, когда необходимо разграничить доступ к информации между разными группами пользователей. Сейчас рассмотрим более простой случай - пример скрытия и отображения текста в зависимости от страницы.
Текст только на главной в Битрикс
<?if ($APPLICATION->GetCurPage(true) == SITE_DIR."index.php"){?> Текст для главной <?}?>или так
<?if ($APPLICATION->GetCurPage(true) == SITE_DIR."index.php"){?> На главной <?} else {?> на остальных <?}?>
Текст только на главной в WebAsyst Shop-Script
{if $main_content_template eq 'home.html'} информация для главной страницы магазина {/if}
Текст только на главной в Joomla
<?php if($_SERVER['REQUEST_URI']=='/') { echo 'текст для главной'; } ?>
Усложним, отобразим на главной один текст, а на остальных страницах другой
<?if (strpos($_SERVER['REQUEST_URI'], '/')!== false){?> этот текст на главной } else{ ?> а этот на всех остальных страницах <?}}?>
Еще усложним и сделаем для главной одно содержимое, для раздела другое, а для остальных страниц третье
<?if (strpos($_SERVER['REQUEST_URI'], '/en/')!== false){?> этот текст на английской версии <?}else{?> <?php if($_SERVER['REQUEST_URI']=='/') { echo 'этот на главной странице'; } else{ ?> а этот на всех остальных страницах <?}}?>
Комментарии
Полезность статьи
5
5
2
На основе 2 оценок
100%
0%
0%
0%
0%
У меня есть задача, показывать блок на Русской версии сайта, но не показывать на Украинской и Английской. При этом русская версия по умолчанию. а языковые в подпапках. Такой вариант подойдет:?
<?if (strpos($_SERVER['REQUEST_URI'], '/en/')!== false){?>
<!-- empty on english -->
<?}else{?>
<?if (strpos($_SERVER['REQUEST_URI'], '/ua/')!== false) {?>
<!-- порожньо на українській -->
<?}else{?>
<!-- блок на русском -->
<?}}?>
<?if (strpos($_SERVER['REQUEST_URI'], '/en/')!== false){?>
<!-- empty on english -->
<?}else{?>
<?if (strpos($_SERVER['REQUEST_URI'], '/ua/')!== false) {?>
<!-- порожньо на українській -->
<?}else{?>
<!-- блок на русском -->
<?}}?>
Полезный ресурс, спасибо. Лично я предпочитаю использовать
if (\CSite::InDir('/index.php')) {
...
}
if (\CSite::InDir('/index.php')) {
...
}