• урок
  • pantey

Список значений «info» файла

08.06.2012

Поговорим, о таком важном файле в темизации Drupal как «info» - файл. Без него ни один шаблон, который вы захотите написать не подцепится Drupal, так как в нём располагается вся необходимая информация для функционирования шаблона. Файл «info» - является обязательным файлом для создания шаблона под Drupal.

пример структуры файла:

Подробно о каждом значении:

  • name = название вашей темы
  • description = краткое описание темы
  • version = версия вашей темы
  • core = ядро, для какой версии Drupal написана данная тема
  • stylesheets[all][] = путь к css который необходимо подключать для данного шаблона.

Если несколько стилей, то каждое подключение необходимо писать отдельно.

  • regions[название_вашего_региона] = Название вашего региона

Замечу, что от названия региона, зависит название переменной, для вывода этого региона. Т.е. если у вас будет запись:

  1. regions [newRegions] = newRegions

то переменная вывода будет писаться как:

  1. <?php print $newRegions;?> //применимо для Drupal 6
  2. <?php print render($page['newRegions']);?> //применимо для Drupal 7

Список значений «info» файла может быть определён по умолчанию, если значении не заданы. Либо когда вы вписываете свои значения, то нужно учитывать,-что значения по умолчанию у вас пропадут. Например по умолчанию(т.е. регионы у вас не вписаны в info) для регионов (regions[]) список значений будет такой:

Drupal 6

  • regions[left] = Left sidebar
  • regions[right] = Right sidebar
  • regions[content] = Content
  • regions[header] = Header
  • regions[footer] = Footer

Drupal 7

  • regions[sidebar_first] = Left sidebar
  • regions[sidebar_second] = Right sidebar
  • regions[content] = Content
  • regions[header] = Header
  • regions[footer] = Footer
  • regions[highlighted] = Highlighted
  • regions[help] = Help
  • regions[page_top] = Page Top
  • regions[page_bottom] = Page Bottom

А если вы впишите хотя бы один свой регион, то остальные также нужно будет дописывать, в противном случае Drupal их не подцепит.

Возможные фичи (Features): - те изменения которые можно изменять в настройках темы

Drupal 6

  • features[] = logo (логотип сайта)
  • features[] = name (название сайта)
  • features[] = slogan (слоган сайта)
  • features[] = mission
  • features[] = node_user_picture
  • features[] = comment_user_picture
  • features[] = search
  • features[] = favicon (свой favicon для шаблона)
  • features[] = primary_links (основное меню)
  • features[] = secondary_links (дополнительное меню)

Drupal 7

  • features[] = logo (логотип сайта)
  • features[] = name (название сайта)
  • features[] = slogan (слоган сайта)
  • features[] = node_user_picture
  • features[] = comment_user_picture
  • features[] = favicon (свой favicon для шаблона)
  • features[] = main_menu (основное меню)
  • features[] = secondary_menu (дополнительное меню)

Скриншот

  • screenshot = screenshot.png

Изображение, которое будет отображаться при выборе шаблона в админке сайта

Подключение скриптов JS

  • scripts[] = javascript.js (указываем путь до расположения файла)

В темизации Drupal возможно указывать минимальные версии PHP, так для

  • Drupal 6 DRUPAL_MINIMUM_PHP равен 4.3.5
  • Drupal 7 DRUPAL_MINIMUM_PHP равен 5.2.4

И записыватся как:

  1. php = DRUPAL_MINIMUM_PHP
-->
Узнавай о новых статьях сайта - первым. Просто подпишись на рассылку.

Комментарии (5)

Profile picture for user Артур
ajsman
03.09.2013

напишите про settings (пример settings[footer_copyright] = 1)
что за параметр

Profile picture for user Артур
Kevin
07.05.2014

Возможные фичи (Fearures) - ошибка, (Features)

Profile picture for user Артур
Вася
25.10.2015

Я вот прописал в инфо теме так как Вы сказали
А как новому блоку и где присвоить класс и где это будет css файл, напишите пожалуйста по подобнее, а то на Друпал.ру знатоков много, апредставте никто не помог
Это всё я прописал
name = Garland
description = Tableless, recolorable, multi-column, fluid width theme (default).
version = VERSION
core = 6.x
engine = phptemplate
stylesheets[all][] = style.css
stylesheets[print][] = print.css
stylesheets[blocks][] = JS/blocks.css
scripts[] = JS/***.js
regions[left] = Left sidebar
regions[right] = Right sidebar
regions[content] = Content
regions[header] = Header
regions[footer] = Footer
regions[header2] = Header2
regions[header3] = Header3

Этот код
print $header2;
?>
вставил в
page.tpl.php

Теперь как я понимаю тут что то надо прописать
stylesheets[blocks][] = JS/blocks.css да?
А как?
. или # ?
какой класс?
В этом проблема.

Profile picture for user pantey
pantey
26.10.2015

Через

stylesheets[all][] = css/style.css

подключаются стили для всех страниц сайта. В info файле нет возможности подключить стилевые файлы для конкретного блока. Для этого используйте

template_preprocess_block

или файл темизации

block.tpl.php
Profile picture for user Артур
Вася
26.10.2015

Сделал так, добавил В info файле строку
stylesheets[all][] = My/blocks.css
затем в корневой папке темы создал папку My , а там файл blocks.css
где прописал стили для блока
#header2 {
display: block;
margin: 20 40em;
font-size: 16px;
background-color: #F0EDDD;
} ну что то вроде этого, на своё усмотрение.

да в файле page.tpl.php своей темы вставил код

Главное забыл, нужно еще вставить В info файле темы строки
regions[left] = Left sidebar
regions[right] = Right sidebar
regions[content] = Content
regions[header] = Header
regions[header2] = Header2
regions[footer] = Footer
regions[header3] = Header3
В которых header2 и header3 новые блоки, строчки нужно эти прописать все