Работа с шаблонами в Joomla. Часть 2.

В версии Joomla 2.5 был добавлен новый способ для переопределения. Это использование макетов. Макет используется в том случае, когда администратору требуется используя один шаблон для отображения материалов выводить на страницу сразу несколько вариантов данных (информационную статью, страницу с описанием товаров и какую-либо страницу книги).

В этом случае достаточно выбрать необходимый Вам макет.
При создании нового альтернативного макета первым делом нужно создать папку с именем совпадающим с именем каталога-оригинала. (com_content). Внутри созданного каталога требуется создать еще один с именем варианта представления (например article). Запомните, что файл для альтернативного макета не должен совпадать по имени с файлом на базе которого он создавался. В случае совпадения имен система будет думать, что это файл переопределения. И соответственно не будет автоматического применения файла.
При использовании альтернативных макетов существует возможность создания индивидуальных типов меню. Список свойств задаваемых при редактировании альтернативных пунктов задается в файлах формата XML названных одноименно с файлами макетов.

 

Работа с меню при создании альтернативного макета

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

Отображение списка альтернативных макетов при работе с материалом

Давайте рассмотрим процесс создания шаблона на базе существующего шаблона Atomic. В его составе имеется набор каталогов и файлов. В каталоге atomic содержит файлы components.php, error.php, favicon.ico, index.html. Назначения файлов интуитивно понятны из их названий. В них хранятся шаблоны для печати, сообщения об ошибках, иконка сайта, страница отображаемая при получении доступа к каталогу. Файл index.php является основным файлом в шаблоне. templateDetails.xml это конфигурационный файл который сохраняет данные о файлах, свойствах и местоположении модулей. Template_thumbnail.png это миниатюра для вывода в менеджере шаблонов. Template_preview.png изображение шаблона для предварительного просмотра.

  • В каталоге CSS хранятся каскадные таблицы стилей.
  • В каталоге html хранятся файлы для переопределения.
  • В каталоге images – изображения шаблона.
  • В каталоге js – скрипты языка Javascript.
  • В каталоге languages – файлы языковых переменных.

Рассмотрим подробнее содержимое файла index.php. внутри файла содержится основные данные шаблона отформатированные в соответствии с языком HTML. Начиная со строки 25 содержатся строчки кода загрузки CSS-фреймворка. В строках 50, 55, 61 и пр. представлены позиции модуля с особыми названиями atomic-search, atomic-topmenu и т.д. При выборе соответствующего поля модуль будет размещаться в выбранной позиции. Для изменения названий полей необходимо внести изменения в файл templateDetails.xml.
В строке 40 содержится код

echo $this->baseurl ?>/templates/<?php echo $this->template ?>/js/template.js

В строке 46 код используется для получения названия сайта:

echo $app->getCfg('sitename');

В строке 48 код для подсчета модулей в позиции atomic-search.
В строке 50

<jdoc:include type="modules" name="atomic-search" style="none" />

содержится комадна для вставки кода HTML в атрибуты. Например атрибут style может принимать следующие значения: table, horz, xhtml, rounded, none, outline, индивидуальный стиль шаблона.
У любой страницы сайта должен быть заголовок и хотя бы один компонент на странице. В некоторых случаях обязательно наличие системной строки.
В каталоге CSS хранится три файла:

  • template.css содержит правила CSS часть из которых закомментирована.
  • template_ie.css пустой. Предназначен для стилей интернет-браузера IE.
  • template_rtl.css пустой. Для стилей арабского направления письма.

CSS-фреймворк Blueprint

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

Шаблон Joomla Beez. Часть 1.