Создание пакета расширений для Joomla

17/05/2012 Документация Joomla 2.5

В Joomla есть тип расширения Package (Пакет), предназначенный для упаковки различных расширений. Бывают ситуации, когда расширение может состоят из нескольких типов расширений, например, для административной части нужен компонент, а для лицевой модуль.

Основные типы расширений для Joomla:

  • component - основное расширение, служит для управления данными
  • file - дополнительные файл(ы), например, может быть дополнительный контроллер для компонента.
  • language - пакет локализации
  • library - дополнительная библиотека для Joomla.
  • module - в основном служит для вывода или обработке данных
  • package - пакет
  • plugin - служат для обработки различных событий в Joomla
  • template - шаблон для лицевой или административной части сайта.

Для того что бы собрать расширение в один установочный пакет достаточно создать простой установочный XML файл.

В данном примере рассматривается простой установочный пакет, который состоит из плагина, модуля и компонента.

<?xml version="1.0" encoding="utf-8"?>
<extension version="2.5" type="package" method="upgrade">
	<name>Example</name>
	<author>Автор</author>
	<creationDate>Дата создания</creationDate>
	<copyright>©</copyright>
	<license>Информация о лицензии</license>
	<authorEmail>somebox@in.ru</authorEmail>
	<authorUrl>http://joomla-code.ru</authorUrl>
	<version>1.0</version>
	<description>Описание</description>
	<packagename>example</packagename>
	<scriptfile>example.php</scriptfile>
	<files>
		<file type="plugin" group="content" id="example">plg_content_example.zip</file>
		<file type="component" id="example">com_example.zip</file>
		<file type="module" id="example">mod_example.zip</file>
	</files>
	<languages folder="language">
		<language tag="en-GB">en-GB/en-GB.pkg_example.sys.ini</language>
		<language tag="ru-RU">ru-RU/ru-RU.pkg_example.sys.ini</language>	
	</languages>
</extension>
  • scriptfile - установочный скрипт для пакета, если необходим.
  • files - расширения, которые входят в состав пакета
  • languages - локализация пакета

Здесь стоит обратить внимание на плагины, для них нужно обязательно прописывать к какой группе они принадлежат.

Фреймворк Joomla будет устанавливать каждое указанное расширение по очереди.

Структура ZIP архива пакета будет иметь следующий вид.

 Пакет для Joomla

Для управлением пакетами расширений нужно в административной панели Joomla перейти в "Расширения" - "Менеджер расширений" - "Управление" - в фильтре выбрать тип "Пакет".

packege02

Здесь можно снять с публикации тот или иной пакет, а также деинсталлировать пакет. При удалении пакета будут удалены все расширения, которые входят в состав пакета. Если по какой-то причине расширение не удастся удалить, то об этом выведется соответствующее предупреждение.

Пример использования пакета можно посмотреть на простом расширении related articles


6