В Контакте Facebook Twitter FriendFeed Мой Мир LiveJournal Memori БобрДобр Закладки Google Яндекс.Закладки Mister Wong Delicious© ОднаКнопка.ру

### Меню

Главная
О компании
Услуги
Статьи
Web сайты
Автоматизация бизнес-процессов
История мировых брендов
Все о HTML
Что такое HTML?
BASE
ISINDEX
Таблицы стилей
Таблицы HTML
Фреймы
HTML-формы
DHTML
Сводная таблица CSS
WML
JavaScript
Описание языка
Методы и функции JavaScript
Объекты JavaScript
Строки
Формы
Фрэймы и окна
Оптимизация
Регулярные выражения
XML + XSLT
Введение в XML
Язык преобразований XSLT
Разбор XML файлов
AJAX
Знакомство с Ajax
Объект XMLHttpRequest
Создание Ajax-приложения
Отправка формы
Области применения
Альтернативные Ajax-у методы
Ошибки Ajax
Навигация на AJAX
SEO
Анализ сайта
WEB продвижение (оптимизация)
Ошибки оптимизаторов
WEB-маркетинг
Информация об IP-адресе
Создание Robots.txt
Создание Sitemap
meta Robots
Каталоги и поисковики
Особенности SAPE
Новости
Новости компании
Новости IT-сферы
Словарь терминов
Компьютерные термины и сокращения
IT Консалтинговые термины
Карта сайта

### Контакты

+ 996 312 46 07 70
(прямой)
+ 996 555 55 03 11
Мы рады вашему звонку!

### CMS Joomla!

### Скачать

### Авторизация

Логин

Пароль

Запомнить меня

- Забыли пароль?
- Забыли логин?

Перевод шаблона Joomla 1.0 в шаблон Joomla 1.5

Перевод шаблона Joomla 1.0.x в шаблон для Joomla 1.5

## Как переделать шаблон от Joomla 1.0.x в шаблон для Joomla 1.5?

Данная задача встаёт перед многими сайтами после официального прекращения разработчиками Joomla поддержки версии 1.0.

Конвертация шабона не занимает много времени. Основные проблемы возникают в поддержке Joomla 1.5 старых версий модулей и компонентов, созданных сторонними разработчиками и не входящими в стандартный пакет Joomla 1.5. К данной проблеме мы вернёмся в новых статьях.

Первым должен быть модифицирован файл templateDetails.xml.

## Изменения в файле templateDetails.xml

1.0 | 1.5
<mosinstall type="template"> ... </mosinstall> | <install type="template"> .... </install>
<images> .... </images> | данный блок объявления рисунков перенесен в блок <files></files>
<css> ... </css> | данный блок объявления каскадных таблиц стилей перенесен в блок <files></files>
<?xml version="1.0" encoding="iso-8859-1"?> | <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE install PUBLIC "-//Joomla! 1.5//DTD template 1.0//EN" "http://www.joomla.org/xml/dtd/1.5/template-install.dtd">

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

#### Пример выбора цвета шаблона:

    <param name="color" type="list" default="blue" label="Change Color" description="Change Template Color">
       <option value="blue">blue</option>
       <option value="green">Green</option>
       <option value="red">red</option>
    </param>

#### Вызов параметра в файле index.php шаблона:

    <link rel="stylesheet" href="templates/<?php echo $this->template ?>/css/
    <?php echo $this->params->get('color'); ?>.css" type="text/css" />

#### Пример отключения вывода компонентов в шаблоне:

    <param name="showComponent" type="radio" default="1" label="Show Component" description="Show/Hide the component output">
       <option value="0">No</option>
       <option value="1">Yes</option>
    </param>

#### Вызов параметра в файле index.php шаблона:

    <?php if($this->params->get('showComponent')) : ?>
        <jdoc:include type="component" />
    <?php endif; ?>

Выбранные параметры сохраняются в файле params.ini, не забудьте установить соответсвующий доступ к данном файлу, иначе настройки не будут сохраняться.

#### Пример полной версии файла templateDetails.xml:

    <?xml version="1.0" encoding="utf-8"?>
    <!DOCTYPE install PUBLIC "-//Joomla! 1.5//DTD template 1.0//EN" "http://www.joomla.org/xml/dtd/1.5/template-install.dtd">
    <install version="1.5" type="template">
        <name>Template name</name>
        <creationDate>19 November 2009</creationDate>
        <author>VBizSoft Team Group</author>
        <authorEmail>info [at] vbizsoft.kg</authorEmail>
        <authorUrl>http://www.vbizsoft.kg</authorUrl>
        <copyright></copyright>
        <license>GNU/GPL</license>
        <version>1.0.0</version>
        <description>Example template for Joomla 1.5</description>
        <files>
            <filename>css/template.css</filename>
            <filename>css/general.css</filename>
            <filename>css/index.html</filename>
            <filename>html/com_contact/category/default.php</filename>
            <filename>images/arrow.png</filename>
            <filename>images/arrow_rtl.png</filename>
            <filename>images/pfeil.gif</filename>
            <filename>images/pfeil_rtl.gif</filename>
            <filename>index.html</filename>
            <filename>index.php</filename>
            <filename>javascript/md_stylechanger.js</filename>
            <filename>javascript/index.html</filename>
            <filename>params.ini</filename>
            <filename>templateDetails.xml</filename>
            <filename>template_thumbnail.png</filename>
            <filename>favicon.ico</filename>
        </files>
        <languages>
            <language tag="en-GB">en-GB.tpl_vbs.ini</language>
        </languages>
        <administration>
            <languages folder="admin">
                <language tag="en-GB">en-GB.tpl_vbs.ini</language>
            </languages>
        </administration>
        <positions>
            <position>left</position>
            <position>right</position>
            <position>top</position>
            <position>breadcrumb</position>
            <position>user1</position>
            <position>user2</position>
            <position>user3</position>
            <position>user4</position>
            <position>debug</position>
            <position>syndicate</position>
        </positions>
        <params>
        </params>
    </install>

## Изменения в файле index.php

В Joomla 1.0 начало файла index.php состояло из следующих строчек:

    <?php
     defined( '_VALID_MOS' ) or die( 'Restricted access' );
     // needed to seperate the ISO number from the language file constant _ISO
     $iso = explode( '=', _ISO );
     // xml prolog
     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 mosShowHead(); ?>
     <?php
     if ( $my->id ) {
         initEditor();
     }
     ?>
     <meta http-equiv="Content-Type" content="text/html; <?php echo _ISO; ?>" />
     <link href="<?php echo $mosConfig_live_site;?>/templates/vbs-template/css/template_css.css" rel="stylesheet" type="text/css" />
     </head>

В Joomla 1.5 начало файла index.php состоит из следующих строчек:

     <?php
    defined('_JEXEC') or die('Restricted access');
    ?>
    <?xml version="1.0" encoding="utf-8"?>
    <!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" xml:lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>" dir="<?php echo $this->direction; ?>" >
    <head>
        <jdoc:include type="head" />
        <link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/beez/css/template.css" type="text/css" />
        <link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/beez/css/general.css" type="text/css" />
    </head>

## Изменения функционала в index.php шаблона:

1.0 | 1.5
Получение полного URL сайта
    <?php echo $mosConfig_live_site; ?>
    <?php echo $mainframe->getCfg('live_site'); ?>
Возвращает текущий шаблон
    <?php echo $cur_template; ?>
    <?php echo $this->template ?>
Выводит хлебные крошки (путь навигации)
    <?php mosPathWay(); ?>
    <jdoc:include type="module" name="breadcrumbs" />
Вывод текущей даты
    <?php echo mosCurrentDate (); ?>
    <?php echo JHTML::Date( 'now', '%d | %m | %Y' ); ?>
Вывод в шаблоне компонента
    <?php mosMainBody(); ?>
    <?php if($this->params->get('showComponent')) : ?>
    <jdoc:include type="component" />
    <?php endif; ?>
Вывод модуля с проверкой на наличие в данной позиции активных элементов, если не один элемент не выводится в данной позиции, то данная позиция не будет выводится. Варианты использования условия: countModules('user1') countModules('user1 and user2')
countModules('user1 or user2')
countModules('user1 + user2')

    <?php if (mosCountModules('top')) { ?>
    <?php mosLoadModules ( 'top' ); ?>
    <?php } ?>
    <?php if($this->countModules('top')) : ?>
    <jdoc:include type="modules" name="top" style="table"/>
    <?php endif; ?>
Варианты отображения компонентов и модулей
    <?php mosLoadModules ( 'position name', type ) ?>
Type:

- -1 модули выводятся без таблиц и блоков
- -2 модули выводятся блоками DIV
- -3 модули выводятся четырьмя блоками DIV, вложенными друг в друга

    <jdoc:include type="modules" name="position" style="type"/>

Type:

- table модули выводятся в таблице
- horz модули выводятся горизонтально (в таблице)
- xhtml модули выводятся одном DIV, c заголовком H3
- rounded модули выводятся четырьмя блоками DIV, вложенными друг в друга

Получение имени сайта
    <?php echo $mosConfig_sitename; ?>
    <?php echo $mainframe->getCfg('sitename'); ?>

#### Добавить комментарий

Имя (обязательное)

E-Mail (обязательное)

Осталось: 1000 символов

Подписаться на уведомления о новых комментариях

Обновить

Отправить
Отменить