Изменения темизации в drupal 7 (часть 1)

Покопавшись в русскоязычном интернете, нигде не нашел даже краткого изменения темизации в drupal 7. Значит - надо написать :) Напишу в нескольких статьях, материала довольно много.

Т.к. возможны еще доработки/изменения D7, то не следует относится к данному перечислению как к "неизменным фактам".

Primary / secondary links теперь называются Main и Secondary меню

В принципе, мелочи, не стоящие особого внимания. Запомнить просто :)

Отображение терминов таксономии

Ранее надо было обращаться к переменной $taxonomy, для рендера ссылок таксономии текущей ноды. Теперь это не нужно. Фактически, массив таксономии "переехал" в node, и доступен через $node->content['links']['terms']['#value'] .

Отрендеренные ссылки не изменились, разве что если в drupal 6 мы выводили их так:

<?php if ($taxonomy): ?>
  <div class="terms">
     <?php print $terms ?>
   </div>
<?php endif;?>

то в drupal 7 выводим так:

<?php if ($terms): ?>
   <div class="terms">
      <?php print $terms ?>
   </div>
<?php endif;?>

Изменение Doctype

В связи с поддержкой RDF(а об этом кстати отдельно - писать и писать), изменился стандартный drupal 6 doctype

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php print $language->language ?>" lang="<?php print $language->language ?>" dir="<?php print $language->dir ?>">
<head>

на следующий:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php print $language->language ?>" dir="<?php print $language->dir ?>"
<?php print $rdf_namespaces ?>>
<head profile="<?php print $grddl_profile ?>">

Класс clear-block переименован в clearfix

Собственно, тут и писать нечего.

box.tpl.php удален

А никто и не пользовался почти :) Теперь данный "аморфный" блок не нужен, т.к. выводимый ранее через него контент имеет собственные функции, такие как theme_search_results_listing() и theme_comment_form_box()

$help стал регионом

Как помните, в drupal 6 были следующие стандартные регионы: left, right, content, header, footer. К ним добавился еще и help. Т.е. если ранее вывод подсказок был сверху контента, то теперь мы получили значительно большую свободу в его отображении. Ура!

выглядит в .info это так: regions[help] = Справка

И да, кстати - я не совсем понял является ли теперь определение стандартных регионов обязательным(но кажется они все-таки подхватываются автоматически, если у вас нет ни одного определенного региона в .info, в общем как и в drupal6). Разработчики ужесточили правила описания в .info файле. Лучше указывать :) Аналогичные рекомендации и относительно "стандартных", определяющихся ранее автоматически файлов style.css, script.js.

$mission стал регионом "highlight"

Тоже, в принципе, комментировать особо нечего, аналогично с $help.

$footer_message удален

Пользуйтесь регионом footer.

$content стал регионом content

Замечу что пока не не совсем ясно - в drupal 6 вывод контента и регион были "совмещены". Либо произошло разделение, либо $content стал полноценным регионом и автоматически выводит в себе основное содержание(эдакое "сращивание наоборот"). Поработаем, поймем :)

Новые css id для блоков

Первой строчкой идут привычные нам css id для drupal 6, второй - как оно будет выглядеть в drupal 7. В принципе - это только косметические изменения, для повышения удобства работы с кодом. Но тем кто темизует, так или иначе придется привыкать и запоминать изменения.

Последние записи в блогах
было: block-blog-0
стало: block-blog-recent

Навигация в подшивках
block-book-0
block-book-navigation

Комментарии
block-comment-0
block-comment-recent

Активные топики форума
block-forum-0
block-forum-active

Новые топики форума
block-forum-1
block-forum-new

Переключение языка
block-locale-0
block-locale-language-switcher

Синдикация
block-node-0
block-node-syndicate

Последние голосования
block-poll-0
block-poll-recent

Информация об авторе
block-profile-0
block-profile-author-information

Поиск (это уже вкуснее для повседневной темизации :)
block-search-0
block-search-form

Популярные записи
block-statistics-0
block-statistics-popular

Powered by Drupal (не нуждается в переводе :)
block-system-0
block-system-powered-by

Блок авторизации (это тоже оч полезно и удобочитаемо. наконец-то! :)
block-user-0
block-user-login

Навигация
block-user-1
block-system-navigation (ура!)

Новые пользователи на сайте
block-user-2
block-user-new

Кто онлайн
block-user-3
block-user-online

Через некоторое время напишу продолжение. Материал взят с drupal.org, и фактически это мой вольный перевод с небольшими комментариями.