Пакет компонента, как и модуля, состоит как минимум из двух файлов — 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& 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">
Назначение сайта joomla <Предыдущая | Следующая> Структура шаблонов joomla |
---|