Как убрать боковые блоки для определённой страници?

Комментарии

Аватар пользователя Ромка Ромка 18 ноября 2006 в 22:07

Интересует похожий вопрос. Можно ли сделать несколько разных шблонов страниц и привязать один шаблон к, например, типу page, другой к типу story?

Аватар пользователя Dan Dan 18 ноября 2006 в 22:33

"Мне нужно убрать показ всех боковых блоков для определённой страници. Как это реализовать?"
Это в настройках блоков: admin/blocks, конфигурация конкретного блока,
далее в "Show block on specific pages:" задайте маску, по которой:
-Show on every page except the listed pages - показывать на всех стр. кроме перечисленных
-Show on only the listed pages. - показывать только на перечисленных страницах
-Show if the following PHP code returns TRUE (PHP-mode, experts only). - для экспертов Smile

"Можно ли сделать несколько разных шблонов страниц и привязать один шаблон к, например, типу page, другой к типу story?"
http://www.lullabot.com/articles/hacking_phptemplate

Аватар пользователя SlavviR SlavviR 22 апреля 2007 в 10:41

экспериментирую
ставлю: показывать на всех стр. кроме перечисленных
прописываю: blog/*
работает!
запрещаю forum/*
захожу на форум
блок не пропадает Sad
где собака зарыта?

Аватар пользователя SlavviR SlavviR 22 апреля 2007 в 10:47

таааак, выяснил
блок показывается только на первой странице форума, пройдя глубже исчезает
ясно, при /forums – еще кажет
а вот далее /forums/… нет
а возможно и на первой странице "форума" скрыть ?

Аватар пользователя SlavviR SlavviR 22 апреля 2007 в 11:49

извиняюсь, не внимателен был
мож другим на пользу:
просто нужно прописать две строки
forums
forums/*

Аватар пользователя dillinger dillinger 10 мая 2007 в 18:41

Всем здрасте.
как убрать блоки разобрался, а как можно реализовать такую штуку:
- Нужно что бы на определенных страницах моя 4х колонная тема превращалась в 3х.
(1-2-3-4 превратилось в 1-2-4).

Аватар пользователя vadbars@drupal.org vadbars@drupal.org 10 мая 2007 в 18:55

Есть несколько путей:
1. В page.tpl.php поставьте проверку по какому-либо условию (нужная страница) и выводите/не выводите какой-то регион (колонку): <?php if(...): print $sidebar_right; endif; ?>.

2. Воспользуйтесь возможностью использовать разные темы оформления в зависимости от пути. Такой модуль есть на http://drupal.org/project/modules

Аватар пользователя dillinger dillinger 14 мая 2007 в 14:32

2 vadbars@drupal.org
Спасибо! Воспользовался 1м вариантом. Все получилось но появилась другая проблема.

Я сделал вот так:

function phptemplate_regions() {
if(isset($name)){
return array(
'left' => t('left sidebar'),
'right' => t('right sidebar'),
'middle' => t('middle sidebar'),
'content' => t('content'),
'header' => t('header'),
'footer' => t('footer')
);
}
else{
return array(
'left' => t('left sidebar'),
'right' => t('right sidebar'),
'content' => t('content'),
'header' => t('header'),
'footer' => t('footer')
);
}
}

тоесть когда посетитель заходит на чейто блог то нужный регин пропадает но ширина региона в котором выводятся его записи осталось прежней. Как можно решить данную проблему?

Аватар пользователя igdrasil@drupal.org igdrasil@drupal.org 14 мая 2007 в 14:58

Вы воспользовались не 1-м вариантом - регионы определяются в template.php, чтобы изменить именно дизайн - надо редактировать *.tpl.php