Новости Joomla на русском
Главная Новости Форум Статьи и обзоры Вопросы и Ответы
Joomla! по-русски

Доступен к загрузке релиз безопасности Joomla 1.5.20 [senu takaa]. Данная версия не содержит никаких исправлений, и выпущена лишь потому, что в пакетах обновления до версии 1.5.19 были допущены ошибки (не все файлы были включены). Эти проблемы не касаются полного дистрибутива Joomla 1.5.19, однако разработчики Joomla рекомендуют незамедлительно установить обновление до Joomla 1.5.20 взамен предыдущих версий.

 
среда, 08 сентября 2010 Главная arrow Статьи и обзоры arrow Создание шаблона для Joomla
Категории
Статьи
Обзоры
Модификации и хаки
Joomla!™ CMS
Russian Joomla Translation Team
Лента новостей
Безопасность
Популярные статьи

Замечание

Joomla!™ является торговой маркой компании Open Source Matters inc в США и др. странах. Название Joomla! и его вариации, такие как J, Joom и т.д., используются в рамках ограниченной лицензии, определённой компанией Open Source Matters. Проект Joomlaportal не относится к компании Open Source Matters или проекту Joomla! Точки зрения представленные на данном сайте не являются официальными точками зрения Joomla Project или Open Source Matters.

Торговая марка Joomla® и логотип используются в рамках ограниченной лицензии, предоставленной Open Source Matters.

Создание шаблона для Joomla

Список статей
Создание шаблона для Joomla
Индекс
Стили и оформление
XML
Фишки

Индекс

Попробуем сделать шаблон на основе образца, взятого мною на templatemonster.

Основу шаблона составляет файл index.php
В его начало просто копируем следующий код:

<?php 
 
 defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' );
 
 $iso = split( '=', _ISO );
 
 echo '<?xml version="1.0" encoding="'. $iso[1] .'"?' .'>';
 
 ?>
 
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
 
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
 <html xmlns="http://www.w3.org/1999/xhtml">
 
 <head>
 
 <?php if ($my->id) initeditor(); ?>
 
 <meta http-equiv="Content-Type" content="text/html; <?php echo _ISO; ?>" />
 
 <?php mosShowHead();
 
 echo "<link rel="stylesheet" 
 
href="$GLOBALS[mosConfig_live_site]/templates/$GLOBALS[cur_template]/css/template_css.css" 
 
type="text/css" />";
 
 echo "<link rel="shortcut icon" href="$GLOBALS[mosConfig_live_site]/images/favicon.ico" />";
 
 ?>
 
 </head>

Основная информация страницы выводится в блоке mainbody. Вся остальная информация выводится в модулях (module). Модули, в свою очередь, располагаются в областях (position) вертикально друг под другом (возможно и горизонтальное расположение, но это редкий и порой сложный в исполнении вариант – см. часть 2 данной статьи). Посмотрим на наш эскиз и постараемся понять, сколько модулей будет на нашем сайте, какие области для них нужны и как их назвать.

Модули могут быть программированные и созданные админом из контрольной панели. С готовыми программированными модулями все понятно – скачиваем и устанавливаем. Собственные модули – это по сути куски статического HTML кода, введенные вами. Рекомендую информацию, постоянную на каждой странице и не требующую изменений, прописывать прямо в коде шаблона (например, логотип, копирайт и т.п.). Информацию же, которая будет присутствовать только на некоторых страницах или часто меняться, лучше занести в модули. Названия областей лучше всего связывать с местонахождением, а не с планируемыми внутри модулями. Обратите внимание, что длина названия области может быть не более 10 букв.

Приблизительная схема наших модулей

Области, определенные под модули

План шаблона

Теперь нам нужно пойти в контрольную панель и объявить все области. В оригинальной версии: Site –> Template Manager –> Module Positions. Возможно там уже будут какие-то области, заявленные разработчиками – их можно смело удалить (только не удалите области, предназначенные для шаблона самой контрольной панели). Порядок, в котором вы занесете все области, будет использоваться в выпадающем списке при выборе области в настройках модулей.

Область вставляется в шаблон следующим кодом

<?php mosLoadModules ( 'название_вашей_области' ); ?>

Например, область с названием left вставляется так

<?php mosLoadModules ( 'left' ); ?>

Исключение составляют дата, строка навигации (pathway) и область mainbody, (где выводится информация компонентов Joomla, например, тексты статей, новости главной страницы и тому подобное).

Код для даты:

<?php echo (strftime (_DATE_FORMAT_LC)); ?>

Код для mainbody:

<?php include ("mainbody.php"); ?>

Код для строки навигации

<span class="pathway"><?php mosPathWay(); ?></span>

Также в шаблон необходимо вставить информацию о разработчиках Joomla и, по вашему желанию, информацию о скорости загрузки страницы

<?php include_once( $GLOBALS['mosConfig_absolute_path'] . '/includes/footer.php' ); ?>
 
 <?php mosLoadModules( 'debug', -1 );?>

Естественно все области вставляются в пределах тэга <body></body>

Путь к изображениям в шаблоне должен выглядеть следующим образом (пример для файла logo.jpg)

<?php echo $mosConfig_live_site;?>/templates/название_шаблона/images/logo.jpg

Все, скелет нашего шаблона готов



 
< Пред.   След. >
Загрузить Joomla!™ CMS

Joomla 1.5

Joomla 1.5.20 Что нового в Joomla CMS 1.5.20

Joomla 1.5.20 Russian
(русифицированная версия)


Joomla 1.5.17 Joomla 1.5.20
Joomla 1.5.18 Joomla 1.5.20
Joomla 1.5.19 Joomla 1.5.20

Локализации

Русский язык для лицевой панели (site)
Русский язык для административной панели (admin)


Joomla 1.0

(устаревшая версия)

Joomla 1.0.15 Что нового в Joomla CMS 1.0.15

Joomla 1.0.13 Joomla 1.0.15
Joomla 1.0.14 Joomla 1.0.15

Как обновить Joomla 1.0
до версии Joomla 1.5?

Языковые файлы

Русский
Украинский
Белорусский

Документация

Joomla 1.5 FAQ
Joomla 1.0 FAQ
Руководство пользователя Joomla 1.0.11


Русская версия Joomla

Joomla 1.5.17 Russian
Joomla 1.0.15 LE 2008

Демо версия

Joomla! 1.5.17 (FrontEnd)
Joomla! 1.5.17 (BackEnd)
(Demo/Demo)