Рекомендую!

Видеокурс: "Шаблон Joomla 2.5 от А до Я"

diskboxsmall

Научитесь создавать свои собственные уникальные и профессиональные шаблоны для Joomla 2.5!

Добро пожаловать в школу Джумла!

Вы находитесь в центре обучения работы с Джумлой, одной из наиболее мощных, простых и бесплатных систем управления содержимым сайта на планете. Не важно, новичок Вы в использовании этой CMS или профессионал, Школа Джумлы откроет Вам много новых, интересных уроков и советов в видео и текстовом формате по работе с этой системой управления сайтом.  Подробнее...

ЗАГРУЗИТЬ СТАБИЛЬНУЮ ВЕРСИЮ ДЖУМЛА

Разработка расширений Joomla 1.7 - Часть 1

Здравствуйте уважаемые читатели моего сайта. Я начинаю серию уроков о создании компонентов, модулей, плагинов на Joomla 1.7, в которых вы шаг за шагом ознакомитесь с принципом написания расширений и научитесь сами создавать их.

Итак, приступаем.

Введение

Joomla 1.7 использует три разных типа области функционирования:

  • Установка (используется для установки Joomla)
  • Администрирование (используется для управления содержимым)
  • Отображение (используется для отображение содержимого)

Область действия Установки используется только один раз при установке системы. Область Администрирования и Отображения используются постоянно, используя концепцию компонентов. Каждый компонент имеет две отправные точки действия:

  • первая находится в каталоге /components и используется для отображения контента
  • вторая находится в каталоге /administrator/components и используется для управления контентом.

Точка входа компонента для области Отображения имеет путь:

/components/com_componentname/componentname.php

а для области Администрирования:

/administrator/components/com_componentname/componentname.php

Префик com_ используется для всех директорий компонентов.

Создание простого компонента

Давайте создадим простенький компонент, который будет выводить определенный текст, например «Привет!». Назвем данный компонент Hello.

Создание установочного архива и установка компонента Hello в Joomla.

Наверное, вы уже знаете, что для установки расширений Joomla использует zip-архивы. Давайте создадим такой установочный архив для компонента Hello.

Создадите в вашем редакторе, в какой-нибудь отдельной папке вне вашего сайта, следующие файлы (все файлы желательно создавать в кодировке UTF-8 без BOM. Это нужно для того, чтобы не возникло проблем с отображением кириллицы, которую Вы будете использовать в этих файлах, например, в комментариях к коду):

hello.xml

site/hello.php

site/index.html

admin/index.html

admin/hello.php

admin/sql/index.html

admin/sql/updates/index.html

admin/sql/updates/mysql/index.html

admin/sql/updates/mysql/0.0.1.sql

Рассмотрим по порядку каждый файл:

hello.xml – служит для описания всех данных о компоненте и файлов, которые используются в процессе установки.

Рассмотрим синтаксис данного файла:

<?xml version="1.0" encoding="utf-8"?>

 <!--Определяем, что устанавливаемое расширение – компонент для версии 1.7. Атрибут method="upgrade" означает, что установщик, заменит существующий компонент устанавливаемым в случае, если компонент с таким названием уже установлен в системе-->
<extension type="component" version="1.7.0" method="upgrade">
    
    <!--Определяем имя компонента-->
    <name>Hello!</name>

    <!--Элементы ниже необязательны и их значения могут быть введены в произвольном формате-->
    <creationDate>15.11.2011</creationDate>
    <author>Bogdan</author>
    <authorEmail>joomla-school[a]ya.ru</authorEmail>
    <authorUrl>http://joomla-school.com</authorUrl>
    <copyright>Copyright Info</copyright>
    <license>License Info</license>

    <!--Строка версии записывается в таблицу компонентов-->
    <version>0.0.1</version>

    <!-- Поле description необязательно и по умолчанию равно значению поля name -->
    <description>Description of the Hello component ...</description>
 
    <update> <!-- Запуск обновления -->
      <schemas>
        <schemapath type="mysql">sql/updates/mysql</schemapath>
      </schemas>
    </update>
 
    <!-- Файлы и директории области Отображения. Копируются из установочного архива в директорию компонента на сайте -->
    <!--Обратите внимание на аттрибут folder, он указыает из какой папки будут копироваться файлы-->
    <files folder="site">

       <!--Пустой файл. Используется для предотвращения прямого доступа к папке-->
       <filename>index.html</filename>

       <!--Точка входа компонента в области Отображения-->
       <filename>hello.php</filename>
    </files>
 
     <administration>
       <!-- Создает ссылку на компонент в админпанели во вкладке Компоненты -->
       <menu>hello</menu>

       <!-- Файлы и директории области Администрирования. Копируются из установочного архива в директорию компонента в админпанели -->
       <files folder="admin">

          <!--Пустой файл. Используется для предотвращения прямого доступа к папке-->
          <filename>index.html</filename>

          <!--Точка входа компонента в области Администрирования-->
          <filename>hello.php</filename>

         <!-- Папка SQL-скриптов -->
         <folder>sql</folder>
       </files>
    </administration>
 </extension>

В папке site будем размещать все файлы, которые должны быть помещены в директорию /components/com_hello

site/hello.php – точка входа компонента Hello для области Отображения. В данный файл впишем текст Привет!

В папке admin будем размещать все файлы, которые должны быть помещены в директорию /administrator/components/com_hello

admin/hello.php - точка входа компонента Hello для области Администрирования. В данный файл впишем текст Привет! Админпанель

admin/sql/updates/mysql/0.0.1.sql будет в дальнейшем использован для создания таблиц компонента. Сейчас это просто пустой файл.

Все файлы index.html содержат код

<html><body bgcolor="#FFFFFF"></body></html>

Итак, запакуем все файлы в zip-архив с именем hello.zip (имя архива может быть и другим, это не имеет значения).

Далее, устанавливаем данный архив в менеджере расширений.

После удачной установки, вы можете увидеть в меню Компоненты ссылку на наш компонент hello.

progrext

Если вы нажмете на нее, то перейдете по следующей ссылке:

http://ваш_сайт /administrator/index.php?option=com_hello

progrext2

То есть, это ссылка на точку входа в область Управления компонентом Hello, а именно файл, который размещен здесь:

/administrator/components/com_hello/hello.php

Если же мы наберем в адресной строке браузера ссылку (уберем administrator):

http://ваш_сайт /administrator/index.php?option=com_hello

то попадем на точку входа области Отображения данного компонента, а именно на файл

/components/com_hello/hello.php

progrext3

Установочный архив вы можете скачать во вложениях к данной статье.

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

До следующего урока.

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


Защитный код
Обновить

Рекомендую!

Новые комментарии

  • This is my first time ggo too see at here and i am really pleassant to read all at one place. Here ... Подробнее...  
  • A fascinating discussion is worth comment. I do think that you should write more on this issue, it ... Подробнее...  
  • You know what Ⲣastor Johansson told us on Sunday iis that God really likeѕ worshіp. Daddy added. Подробнее...  
  • Frеelancing can еvеn lead to an enormous “plus” concerning your incߋme. As a substitute off having ... Подробнее...  
  • auto insurance disability top auto insurance companies in ny ... Подробнее...