Разработка

Как адаптировать шаблон Joomla 1.5 под версию Joomla 2.5 - часть 1

Joomla

Как адаптировать шаблон Joomla 1.5 под версию Joomla 2.5 - часть 1

В этом уроке мы кратко разберем пример адаптации шаблона от Joomla 1.5 под версию Joomla 2.5.  Для учебных целей возьмем шаблон Joomla 1.5 по умолчанию - "rhuk_milkyway" и последовательно адаптируем его под нативную версию Joomla 2.5.

Замечание:

В этом уроке рассматривается исключительно вопрос адаптации шаблона Joomla; подразумевается, что у вас уже установлен и настроен сам сайт на Joomla 2.5 или осуществлена его миграция с более ранней версии 1.5.

Итак, нужно выполнить 5 шагов.

  1. Сделать копию всех файлов шаблона Joomla 1.5
  2. Упорядочить структуру файлов
  3. Отредактировать  файл "templateDetails.xml"
  4. Отредактировать файл "index.php"
  5. Установить и протестировать адаптированный нами шаблон Joomla 2.5

Шаг 1. Делаем копии всех файлов шаблона Joomla 1.5

Первое, что нужно сделать, это скопировать всю папку шаблона от версии 1.5 в соответствующую папку вашего сайта на Joomla 2.5.

Делаем копии всех файлов шаблона Joomla 1.5

Скопируйте папку целиком

  1. Идите в папку с шаблонами Joomla 1.5 (/ваш_сайт/templates/)
  2. Создайте папку под названием rhuk_milkyway25
  3. Скопируйте все файлы из папки шаблона rhuk_milkyway от Joomla 1.5 и вставьте их (перенос без удаления) в только что созданную папку rhuk_milkyway25

Шаг 2. Редактируем структуру файлов

Теперь нам нужно отредактировать структуру папок для обеспечения совместимости шаблона с Joomla 2.5.

Редактируем структуру файлов

Редактируем структуру папок для обеспечения совместимости

  1. Удалите файл params.ini.
    В версии 1.5 этот файл использовался для хранения значений параметров шаблона. Но в версии 2.5, все параметры шаблона хранятся в базе данных. Поэтому теперь надобности в файле "params.ini" нет.
  2. Скопируйте файл "error.php" из дефолтного шаблона “atomic" вашей
    Joomla 2.5 и вставьте его в корень шаблона rhuk_milkyway25. В версии 2.5 представлен новый файл error.php для шаблонизации страниц ошибок. Файл прост и мы можем воспользоваться примером из дефолтного шаблона "atomic"
  3. Создаем новый файл template_preview.png.
    В Joomla 2.5 появился новый файл - template_preview.png, в котором содержится большое превью изображения шаблона. Необходимо сделать изображение шаблона с разрешением 640x480 пикселей и назвать файл template_preview.png.

Шаг 3. Редактируем файл templateDetails.xml.

Итак, теперь пришло время для редактирования файла templateDetails.xml для совместимости с версией version 2.5.

  1. Переименовываем тег <install> на <extension>
    Переименовываем тег install на extension

    Старые значения

    Новые значения

    <install version="1.5"...

    <extension version="2.5"...

    <p ></install>

    </extension>

  2. Изменяем название шаблона в теге <name>
    Изменяем название шаблона в теге name
  3. Заменяем многократные теги <filename> на одиночный тег <folder> Это новая фишка в Joomla 2.5. Теперь нам не нужно описывать все файлы каждой папки, а достаточно объявить лишь папку.
    Заменяем многократные теги filename на одиночный тег folder
  4. Удаляем описание для файла params.ini
    Удаляем описание для файла params.ini
  5. Добавляем описание для новых файлов, созданных на этапе 2
    Добавим следующие 2 строки:
    1. <filename>error.php</filename>
    2. <filename>template_preview.png</filename>
    Добавляем описание для новых файлов, созданных на этапе 2
  6. Переименовываем теги в разделе <params>
    Переименовываем теги в разделе params

Old value

New value

<params>

<config> 
<fields name="params"> 
<fieldset name="advanced">

<param...

< field...

</param>

</field>

</params>

</fieldset> 
</fields> 
</config>

Шаг 4. Редактируем файл index.php

После редатирования файла templateDetails.xml", вам нужно приступить к редактированию файла index.php.

  1. Добавляем PHP код для загрузки библиотеки Mootools. Добавляем стринг "JHtml::_('behavior.framework', true);" в область, показанную на скриншоте ниже.
    Добавляем PHP код для загрузки библиотеки Mootools.
  2. Заменяем текст rhuk_milkyway в шаблоне на php код. Joomla 2.5 позволяет нам получить название шаблона прямо из файла templateDetails.xml, поэтому нет надобности описывать название шаблона текстом.
    Заменяем текст rhuk_milkyway в шаблоне на php код.

    Старый код

    Новый код

    rhuk_milkyway

    <?php echo $this->template ?>

     

Шаг 5. Устанавливаем и тестируем адаптированный шаблон под Joomla 2.5

Теперь адаптированный Joomla 2.5 шаблон представлен в папке с шаблонами, но мы не видим его в менеджере шаблонов поскольку он еще не установлен. Необходимо выполнить следующие шаги:

  1. Идите в Панель администрирования > Расширения > Менеджер расширений > Поиск.
    Идите в Панель администрирования > Расширения > Менеджер расширений > Поиск.
  2. Нажимаем иконку “Найти” в верхней правой части админ.панели
    Нажимаем иконку Найти в верхней правой части админ.панели
    Выбираем объект rhuk_milkyway25 в списке и нажимаем на кнопку “Установить”
    Выбираем объект rhuk_milkyway25 в списке и нажимаем на кнопку Установить
  3. Теперь установка шаблона Joomla 2.5 завершена и мы можем назначить его по умолчанию в менеджере шаблонов.
    Теперь установка шаблона Joomla 2.5 завершена и мы можем назначить его по умолчанию в менеджере шаблонов.

Итак, сегодня на примере шаблона rhuk_milkyway мы завершили его перенос на Joomla 2.5. У вас есть собственные идеи касательно переноса и адаптации шаблона от версии 1.5 к 2.5? Поделитесь своими мыслями в комментариях.

От переводчика: автор статьи ничего не рассказал об адаптации CSS стилей, что является немаловажным моментом, поскольку CSS классы у Joomla 1.5 и Joomla 2.5 имеют отличия. Об этом мы расскажем в части II.

Автор перевода: Евгений Сивоконь

Оригинальная статья: Tuan Bui
Eugene Sivokon
Предприниматель, менеджер проектов, Joomla-энтузиаст. Занимаюсь созданием сайтов с 2002 года. Координатор нескольких Joomla проектов. Обожаю путешествовать, интересуюсь историей и изучаю иностранные языки.
timeweb

Заработок в сети

  • Sape - биржа ссылок