Сегодня, наконец, мы будем устанавливать и корректировать под свои задачи шаблон.
Шаблонов для Друпал великое множество и на офсайте живут они здесь: https://drupal.org/project/project_theme. На момент написания их было более тысячи из них более 500 для 7 ветки. Почти все они (те что на офсайте) бесплатные, поэтому предполагать что в этой куче завалялся и ждет именно вас какой-то нереальный шедевр совершенно не стоит. С другой стороны есть достойные шаблоны с очень неплохим функционалом, как например: https://drupal.org/project/marinelli или https://drupal.org/project/danland
Однако исходя из своего опыта и опыта коллег практически всегда любой шаблон необходимо "допиливать" под конкретную задачу. При таком количестве шаблонов нет особого желания делать свой шаблон с нуля, даже при наличии "нереального мегадизайна" от дизайнера сайта. Поэтому в большинстве случаев поступаем так: ищем из существующих шаблонах что-то более-менее похожее и таки допиливаем. Однако, не стоит забывать указывать авторство хотябы так: Based on Unreal Themplate by Ivan Webmaster http://supersite.com.
Полезную информацию по темизации Друпал, а также созданию собственных тем с нуля можно найти, например, здесь:
Обязательные файлы темы:
На сайте http://drupalace.ru я нашел очень полезную картинку, на которой понятно какие файлы за что отвечаютШаблонов для Друпал великое множество и на офсайте живут они здесь: https://drupal.org/project/project_theme. На момент написания их было более тысячи из них более 500 для 7 ветки. Почти все они (те что на офсайте) бесплатные, поэтому предполагать что в этой куче завалялся и ждет именно вас какой-то нереальный шедевр совершенно не стоит. С другой стороны есть достойные шаблоны с очень неплохим функционалом, как например: https://drupal.org/project/marinelli или https://drupal.org/project/danland
Однако исходя из своего опыта и опыта коллег практически всегда любой шаблон необходимо "допиливать" под конкретную задачу. При таком количестве шаблонов нет особого желания делать свой шаблон с нуля, даже при наличии "нереального мегадизайна" от дизайнера сайта. Поэтому в большинстве случаев поступаем так: ищем из существующих шаблонах что-то более-менее похожее и таки допиливаем. Однако, не стоит забывать указывать авторство хотябы так: Based on Unreal Themplate by Ivan Webmaster http://supersite.com.
Полезную информацию по темизации Друпал, а также созданию собственных тем с нуля можно найти, например, здесь:
- Создание новой темы для Drupal 7
- Темизация Drupal 7. Обзор файлов темы (шаблона)
- Создание темы для Drupal 7 и PSD эскиза
Обязательные файлы темы:
- theme_name.info - файл определений или описания. Здесь содержится информация по внутреннему названию темы, ее версии и кратком описании; расположению файлов CSS, JS; определяются регионы.
- template.php - файл логики темы. Также здесь находятся перекрываеме или собственные функции и переменные для файлов шаблонов. Этот файл может отсутсвовать.
- xx.tpl.php - файлы шаблонов. В файлах находится собственно разметка сайта с внедренными PHP-переменными. Если файл шаблона отсутствует, то будет вызван стандартный файл Друпал.
Добавить свой регион совершенно не сложно. Сначала определяем его в в массиве regions файле theme-name.info, например так:
regions[mynewreg] = My New Region
Затем в файле шаблона page.tpl.php определяем регион:
<?php if($mynewreg) echo $mynewreg ?>
Не забываем сбросить кеш: Меню/<домик>/Очистить все кеши.
Переменные Drupal 7
Вот ссылки на перевод документации и конкретно по переменным, что используются в шаблонах:
Вообще очень неплохой сайтик http://iflight.su/
Чтобы создать свою переменную для использования в шаблонах *.tpl.php в template.php используем функции:
function themename_preprocess_XXX(&vars) { $vars['my_variable'] = 'Renault'; }где XXX:
- page - для передачи в page.tpl.php
- html - для передачи в html.tpl.php
- node - для передачи в node.tpl.php
Более того, для передачи переменной из своего модуля в шаблон, действуем подобным образом в файле my_module.module:
function my_module_preprocess_XXX(&$variables) { $variables['my_module_variable'] = 'Renault'; }
В принципе информации достаточно для старта чтобы разобраться и подкорректировать любую тему или создать свою.
Кстати, для экономии места можно смело удалить не используемые темы из папки /themes, за исключением папки /themes/engines. Понятно, что удаляемая тема должна быть выключена в админке, иначе беды не избежать.
Комментариев нет :
Отправить комментарий
Есть что сказать - скажи