drupal 6

УрокПример перекрытия шаблона CCK

В прошлом уроке я обещал показать пример, как можно перекрывать шаблоны ССК полей. А раз обещал - значит вынь да полож.

Пример

Надо к статье добавить поле, которое будет выводить неограниченное количество картинок с их описанием, введённое в поле "описание (description)".
По умолчанию это поле не выводится, поэтому надо лезть в шаблон и дописывать его вывод. Заодно уменьшить количество лишних классов, мало ли, для seo пригодится ;) Итак, поехали по порядку.

УрокКак перекрывать вывод полей модуля CCK

Модуль, который используется на 95% сайтах друпала - это CCK (content constructor kit). Без него друпал не достиг бы такой мощи, которой он смог достичь. К списку таких модулей также относится Views. Можно перечислить ещё несколько модулей, но на мой взгляд - именно эти составляют основу друпала.

А раз ССК такой популярный, то было бы совсем неплохо научиться работать с ним не только через админку сайта, но и через свою тему.

Первым делом в корень папки с темой надо закинуть файл content-field.tpl.php из модуля ССК (cck\theme\content-field.tpl.php). Потом скопировать его в эту же папку, но назвать по принципу content-field-имя_сск_поля. Имя этого поля в друпале вы задаёте при создании его в своём типе материала.

Таким образом, в корне вашей темы должен лежать файл content-field.tpl.php и content-field-имя_сск_поля.tpl.php.

УрокНеобходимые файлы для создания шаблона. Node.tpl.php

Теперь мы поговорим о таком файле как node.tpl.php. Очень полезный файлик. Он является шаблоном для вывода всех типов материалов. Полезен для каждого сайта, так как всегда надо переписать стандартный вывод статей - иногда ссылки убрать, или, например, показывать тэги только в полной версии материала, а в сокращённой(тизере) не выводить.

Вот как строится материал по стандартному шаблону:

УрокНеобходимые файлы для создания шаблона. Comment.tpl.php

Если вы собираетесь на сайте добавить комментарии к материалам, то этот файл вам будет необходим, т.к. стандартный файл модуля comment вряд ли подойдёт ко многим макетам, и вам придётся вешать на комментарии дополнительные классы, чтобы можно было воплотить в жизнь задумку дизайнера.

Вот как предлагает строить комментарии модуль comment:

УрокНеобходимые файлы для создания шаблона. Block.tpl.php

Ещё один файл, который в 99% темах присутствует - это block.tpl.php. Он отвечает за общую структуру вывода блоков. Я надеюсь, вы используете какую-нибудь программу для просмотра стилей страницы, поскольку без неё будет трудно. Блоки добавляются в регионах через /admin/build/block. Создаваться они могут где угодно (на странице /admin/build/block, через модули, через пхп-код и т.д.), поэтому иногда надо будет узнать - блок это или нет. Обычно если это блок, то контент обёрнут в класс с названием block + другие названия (имя модуля, дополнительные классы и прочее).

Первоначальная структура файла block.tpl.php довольна проста, поэтому я просто приведу её и объясню:

УрокНеобходимые файлы для создания шаблона. Page.tpl.php

После создания info-файла, в принципе, тема уже определена. Это значит, что вы можете зайди в раздел управлением темами http://mysite.ru/admin/build/themes и включить там свою тему. Естестественно, после включения её никакого дизайна вы не увидете - страница приобретёт стиль "чёрное на белом" - на белом фоне чёрный текст.

Однако хочу отметить, что не смотря на то, что в нашей теме никаких файлов кроме mytheme.info не лежит, сайт будет работать так как же как и раньше - выводить весь контент, добавлять блоки в регионы (http://mysite.ru/admin/build/block) и прочее. Это объясняется тем, что в ядро друпала включены обязательные модули, которые даже при полном отсутствии каких либо файлов в вашей теме (за исключением info-файла) позволяют продолжать работу с друпалом.

УрокНеобходимые файлы для создания шаблона. Info-файл

Краткий курс молодого бойца пройден - теперь вы знаете что такое друпал и как с ним работать. Настало время рассказать о том, ради чего был создан этот сайт - о создании шаблонов(тем) для друпала.

Итак, создадим в каталоге C:\WebServers\home\mysite.ru\www\sites\all папку themes, переходим в неё. Здесь создадим ещё одну папку с названием нашей темы - к примеру mytheme.

УрокМеняем язык на русский

После установки друпала, у многих может возникнуть проблема разобраться с настройками на английском языке, темболее что настроек так много, и сначала абсолютно невозможно разобраться что и для чего. Поэтому я решил рассказать как поменять язык на русский.

Для начала жмём в меню слева administer - это у обычных смертных и называется "админкой". Там всегда будут находиться все настройки сайта, точнее ссылки на них. Нас интересует раздел Site building - ссылка modules.

Страницы