Пакет Joomla из нескольких расширений
Пакет Joomla подходит, когда продукт должен одной установкой поставить несколько связанных расширений. До сборки подготовьте и отдельно проверьте каждый вложенный архив. В SovMart для такого выпуска нужен элемент с платформой «Расширение Joomla» и типом package.
Отличайте пакет от состава продукта
Пакет Joomla — один установочный ZIP. Продукт SovMart — коммерческая редакция с элементами. Добавление нескольких элементов в продукт не собирает из них пакет Joomla.
Возможны два самостоятельных решения:
| Задача покупателя | Что подготовить |
|---|---|
| Установить компонент и связанный плагин одним действием | Один элемент с ZIP пакета Joomla |
| Скачивать несколько независимых расширений по отдельности | Несколько элементов в составе продукта |
Выберите модель до выпуска. Если публикуете и целый пакет, и отдельные расширения, объясните пользователю, какой способ установки и обновления вы поддерживаете, чтобы он не устанавливал одни и те же части повторно по разным инструкциям.
Согласуйте имена и состав
У пакета собственная идентичность: например, type=package, element=pkg_example. Она отличается от идентичности входящих компонента com_example и плагина example группы system. Сохраните соответствие между именами вложенных ZIP, их манифестами и записями <file> внешнего манифеста. Для обычного обновления сохраняйте идентификаторы установленных частей; см. названия и идентификаторы Joomla.
Перед сборкой составьте список частей, их версий, зависимостей и лицензий. Включите необходимые тексты лицензий и уведомления вместе с соответствующими файлами; упаковка в общий ZIP не отменяет условия отдельных частей. Подробная проверка приведена в подготовке ZIP расширения.
Пример структуры
Joomla package содержит собственный манифест и вложенные расширения. Имя манифеста связано с <packagename>: для example используется pkg_example.xml. Атрибуты id вложенных записей должны соответствовать установленным расширениям; плагину также нужна группа. Эти правила описаны в официальной документации Joomla Packages.
pkg_example_1_2_3.zip
├── pkg_example.xml
└── packages/
├── com_example.zip
└── plg_system_example.zipПример манифеста для уже подготовленных компонента и системного плагина:
<?xml version="1.0" encoding="UTF-8"?>
<extension type="package" method="upgrade">
<name>Example Package</name>
<packagename>example</packagename>
<version>1.2.3</version>
<description>Компонент Example и системный плагин Example</description>
<files folder="packages">
<file type="component" id="com_example">com_example.zip</file>
<file type="plugin" id="example" group="system">plg_system_example.zip</file>
</files>
</extension>Замените имена, версию и состав своими значениями. Этот пример не содержит код вложенных расширений и не задаёт политику их зависимостей. При необходимости отдельно предусмотрите установочный скрипт и правила удаления частей пакета.

Вложенные ZIP-архивы пакета Joomla и соответствующие записи манифеста.
Настройте пакет в SovMart
- В платформе элемента выберите «Расширение Joomla».
- В «Тип расширения Joomla» выберите «Пакет» (
package). - Укажите «Системное имя расширения»
pkg_example, соответствующее вашему пакету. - В «Состав пакета Joomla» отметьте типы входящих расширений, например «Компонент» и «Плагин». Это описание состава; оно не создаёт вложенные ZIP и не заменяет
<files>в манифесте. - Создайте версию пакета, загрузите внешний ZIP и заполните требования всего поставляемого комплекта к окружению.
Внешние имена pkg_example_1_2_3.zip и pkg_example.1.2.3.zip соответствуют правилу SovMart: одиночные точки между непустыми частями основы разрешены. Вложенные ZIP проверяются на безопасность вместе с внешним архивом, поэтому чрезмерная вложенность или большой распакованный объём могут привести к отказу.
Проверьте установку и обновление
На отдельном сайте выполните чистую установку пакета. Затем проверьте обновление с поддерживаемого предыдущего выпуска, наличие всех частей, их версии и работу совместных функций. Отдельно проверьте выбранный вами сценарий удаления: ошибочный id или группа плагина могут проявиться именно при удалении пакета.
Скачайте опубликованный файл из SovMart и повторите проверку с ним. Так вы проверите и сам архив, и то, что к версии прикреплён правильный файл. При ошибке вложенного расширения исправьте его архив и пересоберите пакет; изменение одного поля «Состав пакета Joomla» не исправит установку.
Результат: покупатель получает один ZIP, устанавливающий согласованный набор расширений. Далее настройте совместимость версии, сервер обновления и включите элемент в нужную редакцию продукта.