- Данные списка изменений проекта в Joomla 4
- Просмотр обновлений в Joomla 4
- Управление просмотром обновлений в Joomla 4
- Добавление тега
changelogurl
в файлы манифеста Joomla 4 - Создание файла журнала изменений проекта на Joomla 4
Данные списка изменений проекта в Joomla 4
Начиная с Joomla 4.0 разработчики расширений могут использовать возможности Joomla для чтения файла списка изменений и предоставления визуального представления списка изменений. Если текущая версия не найдена в списке изменений, кнопка "Список изменений" отображаться не будет.
Изменения в релизе будут представлены таким образом:
Список изменений используется в двух разных местах.
Просмотр обновлений в Joomla 4
Инсталлятор покажет список изменений версии, которую можно установить, если она доступна.
Нажав на кнопку "Список изменений" (Changelog), вы увидите список изменений новой доступной версии расширения Joomla 4.
Управление просмотром обновлений в Joomla 4
Менеджер расширений Joomla 4 покажет список изменений текущего установленного расширения, если оно доступно.
Нажав на номер версии, вы увидите список изменений текущей установленной версии текущего установленного расширения Joomla 4.
Добавление тега changelogurl
в файлы манифеста Joomla 4
Первым шагом является обновление файлов манифеста, которые сообщают Joomla, где найти сведения о списке изменений. Добавьте следующий узел в XML-файлы манифеста:
<changelogurl>https://example.com/updates/changelog.xml</changelogurl>
Пожалуйста, обратите внимание: URL-адрес в теге changelogurl
не должен содержать пробелов или разрывов строк до или после него. См.примеры в коде ниже.
Обновление манифеста сервера
В этом примере приведен файл манифеста сервера обновлений, который информирует Joomla об обновлении компонента с именем "com_lists
". Таким образом, вы увидите кнопку "Список изменений" (Changelog) на странице обновлений.
<?xml version="1.0" encoding="utf-8"?>
<updates>
<update>
<name>Student List</name>
<description>List of students</description>
<element>com_lists</element>
<type>component</type>
<version>4.0.0</version>
<changelogurl>https://example.com/updates/changelog.xml</changelogurl>
<tags>
<tag>stable</tag>
</tags>
<maintainer>Example Miller</maintainer>
<maintainerurl>https://example.com/</maintainerurl>
<section>Updates</section>
<targetplatform name="joomla" version="4.?" />
<client>1</client>
<folder></folder>
</update>
</updates>
Манифест расширения
Дополнительно добавьте тег changelogurl
в XML-манифест расширения для Joomla 4. Таким образом, версия расширения будет связана со списками изменений в менеджерах расширений.
<?xml version="1.0" encoding="utf-8"?>
<extension type="component" method="upgrade">
<name>COM_LISTS</name>
... Other stuff ...
<changelogurl>https://example.com/updates/changelog.xml</changelogurl>
<updateservers>
<server type="extension" name="Обновления моего расширения">https://example.com/lists-updates.xml</server>
</updateservers>
</extension>
Создание файла журнала изменений проекта на Joomla 4
Файл журнала изменений должен содержать следующие 3 узла:
- element
- type
- version
Эта информация используется для определения правильного списка изменений для данного расширения.
Узел version
внутри любого узла changelog
всегда является обязательным. В противном случае вы увидите сообщение об ошибке типа SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data
.
<element>com_lists</element>
<type>component</type>
<version>4.0.0</version>
Далее список изменений заполняется одним или несколькими типами изменений. Поддерживаются следующие типы изменений:
security
:
- Любые проблемы с безопасностью, которые были исправлены
fix
:
- Любые исправленные ошибки
language
:
- Это для языковых изменений
addition
:
- Добавлены какие-либо новые функции
change
:
- Любые изменения
remove
:
- Любые удаленные функции
note
:- Любая дополнительная информация для информирования пользователя
Каждый узел можно повторять столько раз, сколько потребуется.
Формат текста может быть обычным текстом или HTML, но в случае HTML он должен быть заключен в теги CDATA, как показано в примере.
<changelogs>
<changelog>
<element>com_lists</element>
<type>component</type>
<version>4.0.0</version>
<security>
<item>Item A</item>
<item><![CDATA[<h2>You MUST replace this file</h2>]]></item>
</security>
<fix>
<item>Item A</item>
<item>Item b</item>
</fix>
<language>
<item>Item A</item>
<item>Item b</item>
</language>
<addition>
<item>Item A</item>
<item>Item b</item>
</addition>
<change>
<item>Item A</item>
<item>Item b</item>
</change>
<remove>
<item>Item A</item>
<item>Item b</item>
</remove>
<note>
<item>Item A</item>
<item>Item b</item>
</note>
</changelog>
<changelog>
<element>com_lists</element>
<type>component</type>
<version>0.0.2</version>
<security>
<item>Big issue</item>
</security>
</changelog>
</changelogs>
Этот файл содержит 2 журнала изменений:
- Version 0.0.2 (для тестирования представления "Управление")
- Version 4.0.0 (для тестирования представления обновления)
Список изменений может содержать столько версий, сколько необходимо.
Перевод с английского официальной документации Joomla 4:
https://docs.joomla.org/Adding_changelog_to_your_manifest_file
Заберите ссылку на статью к себе, чтобы потом легко её найти!
Раз уж досюда дочитали, то может может есть желание рассказать об этом месте своим друзьям, знакомым и просто мимо проходящим?
Не надо себя сдерживать! ;)