Расширения Joomla!
55
be^ «Описание параметра»
description=»noflCKa3Ka для параметра»>
Описание компонента начинается с тега , обладающего
следующими атрибутами:
? туре — тип расширения (компонент, модуль, мамбот или шаблон);
? version— тег версии Joomla!, для которой предназначен модуль. Во
внимание нигде не принимается — это сугубо информационный тег,
позволяющий понять, почему нельзя установить тот или иной компонент на
конкретную версию Joomla! (имеется в виду несовместимость версий).
Теги и определяют название компонента и информацию о
разработчике компонента соответственно.
Секция содержит описание файлов, входящих в состав модуля.
Данные файлы будут скопированы при установке компонента. Можно также
перечислить директории, которые будут созданы автоматически при установке.
Секция описывает действия, выполняемые при установке
компонента. Обычно данная секция содержит секцию , которая, в свою
очередь, содержит запросы создания таблиц, необходимых для работы
компонента:
CREATE TABLE IF NOT EXISTS f# my_component_table’ (
fid· BIGINT UNSIGNED NOT NULL auto_increment PRIMARY KEY,
‘title1 VARCHAR(255) NOT NULL
) TYPE=MyISAM;
° данном случае будет создана таблица с именем
$префикс_ту_сотропет_Ы)1е. Макросы # будут автоматически заменены
на используемый префикс таблиц (указывается при установке Joomla!).
56
Часть I. CMS Joomla!
В секции находится описание создаваемого меню (и
подменю) для навигации в панели управления сайтом. У каждого пункта меню
есть свой атрибут task. При выборе меню сценарию администрирования
компонента будет передана переменная о именем $task, содержащая
установленное в атрибуте task значение.
В секции есть своя секция , задающая имена
файлов, копируемых в административную часть компонента. Обычно данная
секция содержит пять файлов:
? ас1т1П.имя_компонента.рЬр— основной файл управления. Файл
обязательный;
? аагшп.имякомпонента.рИр— содержит функции вывода результатов
работы. Файл необязательный;
? имя_компонента.хт1— в данном файле может быть секция ,
аналогичная секции (содержит запросы, которые нужно
выполнить при удалении компонента). Если XML-файла не будет (или в нем не
будет секции ), деинсталлировать компонент не получится;
? 1оо1Ьаг.имя_компонента.рЬр — управляет работой панели инструментов,
появляющейся при изменении параметров компонента в панели
управления сайтом;
? toolbar имякомпонента.^тКрЬр— выводит навигацию, определенную в
файле 1оо1Ьаг.имя_компонента.рЬр. Файл необязательный.
Теперь перейдем к секции параметров ( ). При описании параметров
можно использовать следующие атрибуты:
? name — имя параметра;
? type — тип параметра:
• list — список;
• text — текст;
• radio — зависимые переключатели;
• textarea — многострочное поле для ввода;
• spacer — это не параметр, а визуальный разделитель;
? default — значение по умолчанию;
? label — описание параметра;
? description — подсказка.
Глава 3. Расширения Joomla!
57
Примечание
Секции и не являются обязательными. Если
вы хотите разработать компонент без административной части (чтобы им
нельзя было управлять из панели управления сайтом), можете эти секции
не описывать.
На этом описание шаблона для компонента можно считать завершенным, а
мы переходим к рассмотрению шаблона модуля (листинг 3.2).
my_module< /name>
flemic
Oraicamie
ule=»mod_xmodule»>mod_my_module. php
desсription=»описание» />
default=»описание» />
Шаблон модуля довольно прост. Для него достаточно секции с
описанием типа расширения (type=»moduie»), тегов , , секции
и секции (если она нужна).
3.3.2. Работа с базой данных
В большинстве случаев ваше расширение будет использовать базу данных,
поэтому прежде чем приступить к разработке расширений, разберемся, как
работать с базой данных в Joomla!. Можно, конечно, использовать функции
mysqi * для прямого обращения к базе данных, но при разработке расшире-
58
Часть I.
Расширения Joomla! 55 be^ «Описание параметра» description=»noflCKa3Ka для параметра»> |
||
5th Фев 2011
|
Теги:
|
|