Урок - Расширение шаблона node.tpl.php в Drupal 6.

Главная » Курсы » Курс Drupal 6, Темизация. » Урок - Расширение шаблона node.tpl.php в Drupal 6.

Обучающий онлайн курс
Drupal 6, Темизация.

Лицензия: Копирование запрещено.

Как уже говорили ранее Drupal 6 шаблон node.tpl.php работает в нескольких вариантах:

  • node.tpl.php - глобальный шаблон для всех материалов
  • node-<type>.tpl.php - шаблон для материалов пренадлежащих типу <type>.

Для начала пример кода:

/**  * Adding node templates for all cases  */ function ramech_preprocess_node(&$vars){ // если просматриваем индивидуальную страницу (node/<nid>) if($vars['page']) { $vars['template_files'][] = 'node-body'; $vars['template_files'][] = 'node-body-type('.$vars['node']->type.')'; $vars['template_files'][] = 'node-body-nid('.$vars['node']->nid.')'; } // если материалы идут списком else { $vars['template_files'][] = 'node-inlist'; $vars['template_files'][] = 'node-inlist-type('.$vars['node']->type.')'; $vars['template_files'][] = 'node-inlist-nid('.$vars['node']->nid.')'; } // если материал отображен полностью на главной странице сайта if ($vars['is_front'] && $vars['page']) { //front page template $vars['template_files'][] = 'node-front'; } }

В таком случае у нас есть возможность расширить функционал следующими шаблонами:

  • node-body.tpl.php - шаблон будет использоваться для всех материлов, при отображении полного материала.

  • node-body-type(<type>).tpl.php - шаблон будет использоваться для материлов типа <type>, при отображении полного материала.

  • node-body-nid(<nid>).tpl.php - шаблон будет использоваться для конкретного материала с nid = <nid>, при отображении полного материала.

  • node-inlist.tpl.php - шаблон будет использоваться для всех материлов, при отображении материалов списком.

  • node-inlist-type(<type>).tpl.php - шаблон будет использоваться для материлов типа <type>, при отображении материалов списком.

  • node-inlist-nid(<nid>).tpl.php - шаблон будет использоваться для конкретного материала с nid = <nid>, при отображении материалов списком.

  • node-front.tpl.php - шаблон будет использоваться для материала отображенного на главной странице полностью. Чаще всего отображается одна страница м содержит текст для главной страницы.