Недостатки WordPress — uWebDesign подкаст #72

Опубликовано: 24.03.2017

видео Недостатки WordPress — uWebDesign подкаст #72

ReactOS Tech talk in Google Montreal by Alex Ionescu in 2013

Тема — это несколько файлов определяющих как будет смотреться ваш веб-сайт. Вы так же сможете сделать «под-тему» либо другой вариант готовой темы. Нужным является только файл .info, но большая часть тем и под-тем также употребляют другие файлы. Приведенная ниже диаграмма указывает какие файлы можно отыскать в обыкновенной теме и под-теме.


Недостатки WordPress — uWebDesign подкаст #72

.info (обязателен)

Файл .info - это все, что нужно Drupal, для того что бы узреть вашу тему. В нем определяются мета данные, стили, ява-скрипты, регионы и т.д. Остальное по желанию.

Внутреннее имя темы так же определяется тут. К примеру, если файл именуется «drop.info», тогда Drupal обусловит имя темы как «drop». Drupal 5 и ранешние версии для этого употребляют имя папки.


Sublime Text - плагин BracketHighlighter

Файлы info для тем — новинка, показавшаяся в Drupal 6. В пятой версии info файлы были только у модулей.

Файлы шаблонов (.tpl.php)

В этих шаблонах размещается xHTML код, и переменные PHP. Время от времени они могут выводить другую информацию, к примеру xml rss. Каждый .tpl.php файл определяет вывод какой то части инфы. Они опциональны, и если какого то файла нет, будет применен стандартный вывод. Воздержитесь от сотворения сложной логики в этих файлах. Почти всегда это должны быть xHTML-теги, и PHP-переменные. Некие из этих шаблонов находятся в папках ядра и модулей. Скопировав эти файлы в папку темы, вы заставите Drupal использовать вашу версию.

Примечание: Информация о теме кешируется. При добавлении либо удалении шаблонов либо функций, необходимо скинуть кеш.

template.php

Вся программная логика, и обработка выходных данных находится в файле template.php. Он не обязателен, но его можно использовать для сохранения чистоты файлов .tpl.php, а так же для определения переменных до того как они соединятся с разметкой файлов .tpl.php. Так же здесь находятся функции юзера, переопределения функций темы, и любые другие функции ответственные за вывод инфы. Файл должен начинаться с "

Под-темы

С первого взора, под-темы не отличаются от обыденных тем. Главным различием будет то, что они наследуют ресурсы тем-родителей. Для сотворения под-темы, необходимо найти «базисную тему» в файле .info. После чего тема унаследует ресурсы темы родителя. Вероятен множественный уровень наследования, т.е. под-тема может указать в качестве «базисной темы» другую под-тему. Пределы наследования неопределенны.

Drupal 5 более старенькые версии требуют что бы под-темы находились в папке базисной темы. Для 6 версии это не животрепещуще.

Остальное

Логотип и снимок экрана не неотклонимы для функционирования темы, но рекомендованы, в особенности если вы занесли вашу тему в репозиторий Drupal.
Снимок экрана будет показан на страничке администрирования тем, и в свойстах пользовательского аккаунта (естественно, если выданы надлежащие права). Больше инфы можно отыскать в руководстве по добавлению снимка экрана.
Для обеспечения административной опции пользовательского интерфейса либо каких-то «фич» наподобие логотипа, поиска, миссии веб-сайта и т.д., может быть применен файл "theme-settings.php". Это продвинутый функционал. Более подробную информацию можно отыскать в руководстве по расширенным настройкам.
Для работы модуля color, нужна папка "color" с файлом "color.inc", а так же разные файлы поддержки.
Если вы желаете сделать тему на базе темы ядра, сделайте под-тему, либо скопируйте и переименуйте тему. Изменение тем Garland либо Minnelli очень не рекомендовано, потому что они употребляются для установки и обновления.
Все темы не являющиеся темами ядра, либо модификации тем ядра должны находиться в папке "sites/all/themes".Если вы планируете запустить несколько веб-сайтов из одной сборки Drupal, вы сможете сделать тему доступной определенному веб-сайту. Почитайте о этом здесь. ут.

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

Потому что файл .info кешируется, перед тем как узреть какие-либо конфигурации, - очистите кеш.

О файле .info

В Drupal 6, любая тема обязана иметь файл .info в собственной папке. Без него тема не будет видна из Drupal. Файл .info обязан иметь расширение «.info».

Машинное имя берется из наименования темы. К примеру, если файл именуется "drop.info", тогда Drupal обусловит имя как "drop". Имя должно начинаться с буковкы, и не содержать пробелов, и символов препинания. Разрешен символ подчеркивания, но не тире. Разрешены числа, но они не должны стоять первыми.

Примечание:
Внимание! Модули с этим же заглавием что и темы, могут помешать веб-сайту работать. Это может привести к дублированию имен функций, что запрещено в PHP. Все установленные составляющие обязаны иметь уникальные имена. Для создаваемых тем рекомендуется использовать уникальный префикс, к примеру у веб-сайта example.com может быть тема ex_themename.

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

Представьте для себя: создаете основную тему-каркас, а детали и улучшения прикручиваете в под-теме. Можно сделать ответвление в каком будет тестироваться другой дизайн. Используете мульти-сайтинг, но желаете что бы все веб-сайты были в одном стиле? Просто. При помощи под-тем можно соединить многие дизайнерские ресурсы. Конфигурации специфичные для 1-го веб-сайта, могут быть внесены в его под-тему, но если придется поменять что то всюду разом, просто подправьте тему-родителя. При правильном планировании, способности беспредельны.

Для закрепления базисной темы, необходимо включить в файл .info команду base theme, к примеру что бы задать для текущей темы базисную тему " themeName", включите в файл последующую строчку:

Что наследуется:

rss