оновлення модулів

Оновлення модуля ставляться один за одним в суворій відповідності з версією. Кожне оновлення містить лише зміна в порівнянні з попереднім. Настійно рекомендується при кожному випуску оновлення емулювати найрізноманітніші ситуації для тестування. Наприклад, перед випуском встановити нові функції та на чисті дистрибутиви різних версій, і на робочі сайти.

Структура оновлення модуля

Файли папки з оновленням:

  • /install/version.php - файл містить номер версії оновлення і дату його випуску. Обов'язковий файл.
  • description. * - містить опис оновлення, де * - ідентифікатор мови в системі. Наприклад, опис оновлення модуля російською мовою буде міститися у файлі description.ru. англійською - description.en. Обов'язковий файл.
    В описі допустимо використання html тегів: ,,,
  • ,
      ,,

      ,

    • updater.php - файл запускається при установці оновлення. За допомогою цього файлу виконуються дії для поновлення на нову версію. Файл може містити довільний PHP код, який виконується в контексті сайта. Необов'язковий файл.
    • version_control.txt - служить для організації зв'язку між версіями модулів. Файл містить посилання на версії модулів, від яких залежить це оновлення. Наприклад, файл може містити iblock, 13.8.0. Це означає, що дане оновлення буде встановлено, якщо в системі встановлено модуль Інформаційні блоки версії не нижче 13.8.0. Або модуль Інформаційні блоки не встановлено взагалі. Необов'язковий файл.

    Перед завантаженням модуля на сайт необхідно запакувати збірку оновлення модуля в архів. Для цього виконайте наступне:

    • Створіть каталог з назвою версії оновлення. Наприклад, 0.0.2, 0.0.5 і т.д.
    • Скопіюйте в створену папку файли і каталоги оновлення модуля.
    • Заархівуйте папку в формат .zip або .tar.gz.

    В результаті має вийти, наприклад, 0.0.2.zip, 0.0.5.zip. Наприклад, папка з оновленням може мати наступну структуру:

    Всі файли модуля крім updater.php. description.ru та інших службових копіюються автоматично в папку вашого модуля при оновленні.

    Примітка. Автоматично оновлюється тільки ядро. Всі інші файли (в тому числі і компоненти модуля) - тільки за явною вказівкою. Якщо виникла необхідність скопіювати файли в оновленні самостійно, то потрібно використовувати:

    У цьому випадку файли з папки / install / classes. що знаходяться в папці поновлення, скопійовано в папку /bitrix/modules/quintura.search/classes.

    Якщо при випуску наступних оновлень виникла потреба встановити залежність його від нових модулів, то необхідно пам'ятати, що оновлення з залежністю не вимагатиме установки зазначених модулів. У цьому випадку можливі два варіанти:

    1. Оновлення все одно встановлювати, перевіряти присутність потрібного модуля вже в функціоналі модуля.
    2. Додати в код поновлення перевірку на потрібний модуль, і при його відсутності виводити помилку користувачеві. Оновлення не буде встановлено, якщо привласнити змінної $ errorMessage рядок повідомлення.

    Схожі статті

Copyright © 2024