Theme

 →  Создаем свою тему вывода

published 21 July 2012

Для создания своей темы вывода контента в нашем модуле нам понадобиться объявить нашу тему воспользовавшись хуком hook_theme:

function example_module_theme ($existing, $type, $theme, $path) {
  return array(
       //Вариант 1 выводим все в шаблон
       'block_one' => array(
               //переменные которые будем передавать в шаблон
		'variables' => array('days' => NULL, 'link' => NULL, 'descrip' => NULL ),
                //имя шаблона без tpl.php
		'template' => 'event_block_field',
                //путь к шаблону
		'path' => drupal_get_path('module', 'example_module') . '/theme',
    ),
     //Вариант 2 выводим через функцию
    'block_two' => array(
                //переменные которые будем передавать в функцию
		'variables' => array('days' => NULL, 'link' => NULL, 'descrip' => NULL ),
    ),
  )
}

Наши темы объявлены создадим обработчики для них.

 →  Шаблон то типу ноды и ее номеру

published 20 September 2011

Для использования следующих названий шаблонов для страниц определенного типа или номера:

page–type–blog.tpl.php и page–node–2.tpl.php,

следует прописать следующий код в template.php

function mytheme_preprocess_page(&$variables, $hook) { //some other stuff if (isset($variables[’node’])) {
$variables[’theme_hook_suggestions’][] = ‘page__type__’. $variables[’node’]->type; $variables[’theme_hook_suggestions’][] = “page__node__” . $variables[’node’]->nid; } }

 →  Функция вывода списка

published 27 July 2011

//for drupal 6 $title = MYTITLE; $type = ‘ul’; $attributes = array( ‘id’ => ‘MYITEMLISTID’, ); $page_contents .= theme(‘item_list’, $items, $title, $type, $attributes);

//for drupal 7 $output = theme(‘item_list’, array(‘items’ => $items, ’type’ => ‘ul’, ‘attrebutes’ => $attributes ));