На главную
 
Здесь вы можете проверить, свободен ли
интересующий вас домен, и сколько он стоит
 
Выберите необходимую вам зону
 
Главная CMS Joomla! Инструкция Joomla! Создание XML-файла компонента
Создание XML-файла компонента PDF Печать E-mail

Пакет компонента, как и модуля, состоит как минимум из двух файлов — XML- и PHP-файла. В большинстве случаев понадобится еще и третий файл, реализующий функции интерфейса администратора.

Нужно отметить, что поскольку компонент — более сложный тип расширения, то и на его разработку понадобится значительно больше времени. Как и в случае с модулем, разработку компонента начнем с XML-файла.

XML-файл компонента очень похож на XML-файл модуля. Но в то же время, в нем есть дополнительные секции. Отличается он от XML-файла модуля, во-первых, типом расширения, указанным в секции install:

<?xml version="1.0" encoding="windows-1251"?> <install version="1.5.0"> <name>mycomponent</name>

 

ПРИМЕЧАНИЕ

При разработке XML-файла обязательно обратите внимание на кодировку. Если вы используете кодировку Windows-1251, обязательно укажите ее в заголовке XML-файла, иначе получите ошибку при установке компонента.

Во-вторых, XML-файл компонента отличается от XML-файла модуля наличием секции администратора (для компонента она практически обязательна):

<administration>

<menu>Мой компонент</menu>

<files folder="admin">

<filename component="com_mycomponent">mycomponent.php</filename>

</files>

</administration>

 

В секции menu задается название компонента для отображения в меню Компоненты. Далее следует секция files, аналогичная основной секции files. Даже если у вашего компонента нет интерфейса администратора, обязательно создайте секцию administration, иначе компонент не зарегистрируется в меню Компоненты, и вы не сможете узнать, установлен он или нет.

 

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

<menu img="components/com_mycomponent/images/my.рng">Мой компонент</menu>

 

Конечно, файл my.png нужно "прописать" в секциях media и files (см. ниже):

<media folder="aditiin" destination="com_mycomponent/images">

<filename>images /my. png< /filename>

</media>

 

Для особо сложных компонентов можно указать секцию подменю

<submenu>:

<submenu>

<menu link="option=com__mycomponent&amp; task=l">KoMamia K/menu>

<menu link="option=com_mycoraponentSamp;task=2">KoMamia 2</menu>

<menu link="option=com_mycomponentSamp;task=3">K0Mamia 3</menu>

</submenu>

 

Обратите внимание на то, что символ & должен в обязательном порядке быть заменен HTML-эквивалентом &аmр.

 

Теперь подробнее рассмотрим секцию files. Файлы интерфейса администратора обычно расположены в каталоге admin. Данный каталог должен существовать в ZIP-архиве пакета расширения.

<files folder="admin">

<filename>admin .mycomponent .php</filename>

<filename>images /my. png</filename>

</files>

 

Языковые файлы компонента, если вы решите их создавать, прописываются так:

<languages folder="admin">

<language tag="en-GB">en-GB.com_mycomponent.ini</language> <language tag="ru-RU">ru-RU.com_mycomponent.ini</language> </languages>

 

Вернемся к отличиям XML-файла компонента. В нем могут быть секции, определяющие действия при установке (installfile) и удалении компонента (uninstallfile):

<installfile>installer.php</installfile> <uninstallfile>uninstaller.php</uninstallfile>

 

Довольно часто при установке нужно создать дополнительные таблицы, необходимые для работы компонента:

<install>

<sql>

<file driver="mysql" charset="utf8">install.sql</file>

<file driver="mysql">install.sql</file>

</install>

<uninstall>

<sql>

<file driver="mysql" charset="utf8">uninstall.sql</file>

<file driver="mysql">uninstall. sql</file>

</uninstall>

 

Если предусмотрены языковые константы для пользовательской части компонента, их описывают в секции languages, лежащей за пределами секции administration:

<languages>

<language tag="en-GB">en-GB.com_mycomponent.ini</language> <language tag="ru-RU">ru-RU.com_mycomponent.ini</language>

</languages>

 

Полный код XML-файла компонента представлен в листинге 9.4.

 

Листинг 9.4. XML-файл компонента

 

<?xml version="1.0" encoding="windows-1251"?> <install version="1.5.0"> <name>mycomponent</name>

<creationDate>Oct 2008</creationDate>

<author>Denis Kolisnichenko</author>

<authorEmail> Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript </authorEmail>

<authorUrl>http://www.dkws.org.ua</authorUr1>

<license>GNU/GPL</license>

<!— Версия компонента, а не Joomla —>

<version>l.4.0</version>

<description>

 

Описание компонента (допускается использование тегов HTML) </description>

<!— PHP-файлы инсталлятора отсутствуют, но есть файлы с

SQL-кодом, который нужно выполнить при установке и удалении компонента. Обычно при установке компонента создается необходимая дополнительная таблица (оператор CREATE TABLE), а при удалении компонента зта таблица удаляется (оператор DROP TABLE) —>

<install>

<sql>

•Cfile driver="mysql" charset="windows-1251">install. sql</file>

</install>

<uninstall>

<sql>

<file driver="mysql" charset="windows-1251">uninstall. sql</file>

</uninstall>

<languages>

<language tag="en-GB">en-GB.com_mycomponent.ini</language>

<language tag="ru-RU">ru-RU.com_mycomponent.ini</language>

</languages>

<files>

<filename>mycomponent.php</filename> <filename>my.png</filename>

</files>

<media destination="com_mycomponent"> <filename>my. png< /filename>

</media> <administration>

<menu img="components/comjnycomponent/my.png">My component</menu>

<files folder="admin">

<filename>admin .mycomponent. php</filename> <filename>my. png< /filename> </files>

<languages folder="admin">

<language tag="en-GB">en-GB.com_mycomponent.ini</language> <language tag="ru-RU">ru-RU.com_mycomponent.ini</language>

</languages>

<media folder="admin" destination="com_mycomponent/images">

<filename>my. png< /filename> </media> </administration>

</install>

 

В соответствии с этим XML-файлом структура каталога с нашим компонентом будет такова:

 

admin <DIR>

admin.mycomponent.php

en-GB.com_mycomponent.ini my.png ru-RU.com_mycomponent.ini

mycomponent.php

my.png

en-GB.com_mycomponent.ini

ru-RU.com_mycomponent.ini

install.sql

uninstall.sql

 

Новости

Статистика

Просмотры материалов : 1256747

Кто на сайте

Сейчас 270 гостей онлайн
 
 
 
 
Партнер REG.RU Мы принимаем WebMoney, Здесь находится аттестат нашего WM идентификатора 110005872604 Мы принимаем QIWI Мы принимаем Яндекс.Деньги Мы принимаем Z-PAYMENT
Разработка сайтов компания “СВАРОГ”
© 2012 Host Solutions - Хостинг и регистрация доменов. Все права защищены.
Дизайн, Разработка сайтов компания “WEB-SVAROG”