Как разместить блок выше контента

Главные вкладки

Аватар пользователя nay nay 31 июля 2007 в 0:16

сабж, нужен блок не в шапке, а до начала контента,

вес блока в настройках настраивали - не влияет на верх.

можно сделать?

Комментарии

Аватар пользователя Shedko Shedko 31 июля 2007 в 2:06

Определите новый регион.
например в template.php добавим

<?php

function THEMENAME_regions() {
return array(
'sidebar_left' => t('left sidebar'),
....
'my_new_block' => t('My Content Block'), <<<<<<<<<<<<<----------------- ВОТ ЭТУ СТРОЧКУ ДОБАВЛЯЕМ
...........
'footer_message' => t('footer')
);
}
?>

а в page.tpl.php
в нужном месте, перед выводом
<?php print $content ?>
добавим
<?php print $my_new_block' ?>

Аватар пользователя Marss Marss 12 декабря 2007 в 16:44

Ничо не понятно (
А если надо блок выводить только на определенных страницах?

upd: Надо было просто все блоки переопределить по зонам)
Спасибо!

Аватар пользователя coyotle coyotle 12 декабря 2007 в 13:34

Как уже писали выше, Вы можете создать столько регионов сколько хотите определив их в функции <имя темы>_regions()
А потом вставить в теме вывод этого региона где вы хотите (в page.tpl.php).
Затем в админке помещаете нужные блоки в этот регион и настраиваете видимость этих блоков на определенных страницах

Аватар пользователя Marss Marss 12 декабря 2007 в 13:44

Крууууть.. спасибо! )
Только у меня чото правая сторона отвалилась (
Кусок кода пропущен? для templates?!

Аватар пользователя coyotle coyotle 12 декабря 2007 в 13:48

Если вставил то, что выше.. там где многоточия должны быть перечислены остальные регионы: right sidebar, header и т.д.

Аватар пользователя Dart Dart 12 декабря 2007 в 15:20

1. Создаем дополнительную область в phptemplate.engine
2. Добавляем её как переменую в page.tpl.php
3. Или через блоки или через код - например <?php if ($is_front) {?> (или <?php if ($is_front) {?>, или же указывающий страничный) - задаем вывод на определенных страницах...

Valeratal, у меня создано дополнительно регионов 5, - никаких особых задержек не заметил.