Пересобрать переменную например $header

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

Аватар пользователя kissfm kissfm 26 февраля 2009 в 19:32

Здравствуйте.
Хотелось бы по-своему настроить сборку переменных системных. В данной случае интересуюсь переменной $header.
Мешают <div></div> очень. Хочу без них и с другой структурой получить $header.
Где поковыряться нужно для этого?
Спасибо.

Комментарии

Аватар пользователя neochief neochief 27 февраля 2009 в 2:10

в template.php

function phptemplate_preprocess_page(&$variables) {
  $current_header = $variables['header'];
  // ...
  $variables['header'] = $new_header;
}

Хотя скорее всего вы не до конца объяснили чего хотите. Дивы там не втавляются и так, это девственно чистый регион, куда тупым джоином пихаются блоки. А вот в блоках уже может быть мусор. Чтобы определить шаблоны для блоков хедера, можно создать шаблон block-header.tpl.php, и там уже избавиться от жирка. Я чаще всего там пишу просто <?php print $content ?> и тем обходится.

И кеш не забываем чистить.

Аватар пользователя kissfm kissfm 27 февраля 2009 в 11:37

Я вообще не могу собраться с мыслями где и какие функции писать, где их вызывать, какие файлы могут понадобится новые и создать их, что в них может быть...
И template.php не у всех тем есть...

Аватар пользователя kissfm kissfm 27 февраля 2009 в 15:00

neochief, ну если я создам этот template.php и что далее? Вот он пустой. Что в него вкинуть и заставить делать то, о чем я здесь говорю?
Я ни разу ничего не писал в код друпала, не имею понятий как тут все работает, какие связи между файлами и т.д.

Аватар пользователя neochief neochief 27 февраля 2009 в 16:13

Вот в точности содержимое вашего будущего файла:

<?php

// Это должно переписать нафиг переменную $header
function phptemplate_preprocess_page(&$variables) {
  $variables['header'] = 'example';
}

Кроме того, напомню про шалон блоков, который видимо выпал у вас из виду. Копируете block.tpl.php, назвав его block-header.tpl.php и вписывете там чистый код.