Создание базового компонента
Создадим базовый компонент Hello World!.
Фронт-энд (публичная часть)
[править]Создайте файл yoursite/components/com_helloworld/helloworld.php следующего содержания:
Hello world
Протестируйте созданный компонент, введя index.php?option=com_helloworld в адресной строке браузера (не забудьте добавить путь к вашему сайту).
Бэк-энд (административная часть)
[править]Создайте файл yoursite/administrator/components/com_helloworld/helloworld.php следующего содержания:
Hello world administration
Протестируйте созданный компонент, введя administrator/index.php?option=com_helloworld в адресной строке браузера.
Создание установочного пакета
[править]Создайте каталог, содержащий следующие файлы:
- helloworld.xml
- site/helloworld.php
- site/index.html
- admin/index.html
- admin/helloworld.php
- admin/sql/index.html
- admin/sql/updates/index.html
- admin/sql/updates/mysql/index.html
- admin/sql/updates/mysql/0.0.1.sql
admin/sql/updates/mysql/0.0.1.sql это пустой файл.
Создайте zip-архив из этого каталога и установите его, используя extension manager. Протестируйте созданный компонент, введя index.php?option=com_helloworld или administrator/index.php?option=com_helloworld в адресной строке браузера.
helloworld.xml
<?xml version="1.0" encoding="utf-8"?>
<extension type="component" version="1.6.0" method="upgrade">
<name>Hello World!</name>
<!-- Следующие элементы необязательны -->
<creationDate>April 2011</creationDate>
<author>John Doe</author>
<authorEmail>john.doe@example.org</authorEmail>
<authorUrl>http://www.example.org</authorUrl>
<copyright>Copyright Info</copyright>
<license>License Info</license>
<!-- Версия компонента -->
<version>0.0.1</version>
<!-- Описание компонента (необязательный элемент, по умолчанию содержит название компонента)-->
<description>Description of the Hello World component ...</description>
<update> <!-- Runs on update; New in 1.6 -->
<schemas>
<schemapath type="mysql">sql/updates/mysql</schemapath>
</schemas>
</update>
<!-- Секция файлов фронт-энда (Site Main File Copy Section) -->
<!-- Note the folder attribute: This attribute describes the folder
to copy FROM in the package to install therefore files copied
in this section are copied from /site/ in the package -->
<files folder="site">
<filename>index.html</filename>
<filename>helloworld.php</filename>
</files>
<administration>
<!-- Administration Menu Section -->
<menu>Hello World!</menu>
<!-- Administration Main File Copy Section -->
<!-- Note the folder attribute: This attribute describes the folder
to copy FROM in the package to install therefore files copied
in this section are copied from /admin/ in the package -->
<files folder="admin">
<!-- Admin Main File Copy Section -->
<filename>index.html</filename>
<filename>helloworld.php</filename>
<!-- SQL files section -->
<folder>sql</folder>
</files>
</administration>
</extension>
site/helloworld.php
Hello World
admin/helloworld.php
Hello World administration
index.html должен быть в каждом каталоге
<html><body bgcolor="#FFFFFF"></body></html>
Навигация
[править]Следующий урок: Добавление компонента на сайт.