Пропонуємо Вашій увазі невеликий мануал-введення по створенню шаблонів для Joomla! 1.5. Стаття описує базовий функціонал розділення логіки та дизайну для тих, хто займається створенням шаблонів.
Шаблон
Структура шаблону практично не змінилася. Шаблони лежать у папці /templates. У папці Вашого шаблону обов’язково повинні бути наступні файли: index.php і templateDetails.xml (саме так з D у верхньому регістрі).
Папки для CSS і опис своїх типів відображення модулів (див. нижче) називаються css і html відповідно.
Структура:
- templates
- my_template
- css
- html
- index.php
- templateDetails.xml
- my_template
Файл templateDetails.xml містить опис шаблону (ім’я автора, дату створення та ін.) і список файлів, які містяться в шаблоні (необхідно для встановлення шаблона через Менеджер Встановлення). Файл index.php – це власне і є шаблон.
Код порожнього index.php:
'; ?>
Всередині теґів … міститься html-зміст шаблона (можливі включення PHP-коду).
Модулі
В Joomla! 1.0.x модулі виводилися так:
де:
- left – позиція модуля,
- -1 – тип відображення модуля.
В Joomla! 1.5 відображення модулів здійснюється наступним чином:
де:
- type=”modules” – говорить про те, що виводиться модуль;
- name=”right” – вказує на позицію модуля;
- style=”-1″ – вказує тип висновку модуля.
Для style=”…” з’явилася можливість вказування типу виводу не тільки цифрами, але й ключовими словами.
style=”table” – стандартний вивід модуля в таблиці:
Заголовок Модуля |
---|
Зміст Модуля |
де:
- style=”horz” – горизонтальний відображення.
Не побачив різниці з style=”table”, хоча в офіційному мануалі сказано, що формується горизонтальне відображення модуля.
style=”xhtml” – вивід модуля в одному DIV із заголовком H3:
Заголовок Модуля
Зміст Модуля
style=”rounded” – відображення модуля в чотирьох вкладених DIV (використовується для створення закруглених кутів у модулях):
Заголовок Модуля
Зміст Модуля
style=”raw” – буде виведений зміст модуля без заголовка, таблиць і DIV’ів:
Зміст Модуля
В Joomla 1.5 додана можливість створювати свої типи відображення модулів.
Опис типу відображення модуля знаходиться у файлі /templates/template_folder/html/modules.php. Ім’я функції обов’язково повинне починатися з modChrome_.
Приклад відображення модулів
Створимо тип відображення style=”example”, у якому модулі будуть виводитися в таблиці шириною 180px, заголовок модуля має червоне тло, текст заголовка виводиться в тегах
…
, тіло модуля має сіре тло. Весь текст у верхньому регістрі.
Код найпростішого файлу modules.php буде таким:
{ ?>
title ?> |
content ?> |
Контент
Відображення контента здійснюється таким чином:
В Joomla! 1.0.x
В Joomla! 1.5
Код найпростішого index.php трьохколоночного шаблону
'; ?>
Трюки з відображенням модулів
Завдання:
Для зареєстрованих користувачів виводимо модулі в right для всіх інші модулі в user1.
Вирішення:
Після тегу пишемо
у тілі шаблона
_id) {?>
Завдання:
Для користувачів групи author виводимо модулі в right для всіх інші модулі в user1.
Вирішення:
Після тегу пишемо
у тілі шаблона
get('usertype') == 'Author') {?>
Завдання:
Разом з компонентом weblinks виводимо модулі в user2.
Вирішення:
Після тегу пишемо
у тілі шаблона
Деякі змінні використовувані в шаблонах
- $mainframe->getCfg(‘sitename’) – назва сайту;
- $mainframe->getCfg(‘mailfrom’) – електронна адреса Адміністратора;
- $mainframe->getCfg(‘live_site’) – URL сайту;
- $this->template – ім’я папки шаблона.