Оновлення модуля ставляться один за одним у суворій відповідності з версією. Кожне оновлення містить лише зміну в порівнянні з попереднім. сайти.
- /install/version.php – файл містить номер версії оновлення та дату його випуску.
- description.* - містить опис оновлення, де * - ідентифікатор мови у системі Наприклад, опис оновлення модуля російською мовою буде у файлі description.ru, англійською - description.en.Обов'язковий файл.
В описі допустиме використання html тегів: ,,,
- ,
- updater.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
Структура апдейтера
Апдейтер може створюватися у двох формах. При цьому в кожному конкретному оновленні може бути лише одна.
- Файл /updater.php у корені папки з оновленням. Цей файл буде запускатися на виконання як апдейтер.
- Папка /updater на корені папки з оновленням. Як апдейтер буде запускатися файл index.php у ній.
Другий спосіб зазвичай використовується, якщо для виконання апдейтера потрібні якісь додаткові файли: мовні ресурси, файли з даними тощо.
Опис
Механізм апдейтерів служить для того, щоб застосувати необхідні зміни до тих частин сайту, які не є ядром. За допомогою цього механізму можна привести структуру бази даних, системні та публічні файли у відповідність до поточної версії ядра.
У кожному оновленні може бути лише один updater.php. Але може і не бути жодного, якщо потрібно оновити лише ядро.
Апдейтер може виконати код PHP. При цьому є набір архітектурних обмежень, які потрібно враховувати.
Обмеження
- Оновлення встановлюються на всі модулі, які входять до ліцензії та присутні на сайті Встановлений модуль чи ні, не має значення . Це треба враховувати під час написання коду апдейтера.
- Оновлення можуть встановлюватися кілька разів. Відповідно код апдейтера має враховувати можливість багаторазового запуску.
- Апдейтер виконується один раз безпосередньо перед копіюванням файлів оновлення з папки оновлення до ядра на одному хіті.Якщо за один хіт оновлюються кілька версій одного модуля, їх апдейтери виконуються послідовно відповідно до їх версіями. Якщо один хіт оновлюються кілька модулів, то виконуються апдейтери всіх цих модулів, але міжмодульний порядок виконання не визначено.
- АПІ поточного поновлення недоступний на хіті поновлення У разі використання нового коду в апдейтері буде отримана помилка: Class 'Ім'я\Класа' not found . А якщо є циклічні міжверсійні залежності, які пов'язують кілька версій одного модуля, то буде недоступним АПІ всіх цих оновлень. Використання нового АПІ у коді updater.php неможливо. Використання будь-якого АПІ в коді апдейтера можливе, але не рекомендується.
- При виконанні апдейтера доступний і він, і папка з оновленням.
Оновлення
Примітка: Ядро Ядро продукту – файли, що знаходяться в директорії /bitrix/modules/ , а також файли системних компонентів: /bitrix/components/bitrix/ .
Докладніше. оновлюється системою оновлень автоматично під час інсталяції оновлень. Інші частини сайту, включаючи базу даних, автоматично не оновлюються.
Усі файли оновлень просто копіюються як є в папку модуля. І якщо ваш модуль повністю розташований у цьому каталозі, оновлення завершено. Якщо ж за логікою роботи модуля потрібно щоб частина файлів була поза ядром, в будь-якій іншій папці, то за допомогою updater.php потрібно перенести в потрібне місце.
Механізм апдейтерів (updater.php) служить саме для того, щоб застосувати необхідні зміни до тих частин сайту, які не є ядром. За допомогою цього механізму можна привести структуру бази даних, системні та публічні файли у відповідність до поточної версії ядра.
Якщо виникла потреба скопіювати файли в оновленні самостійно, потрібно використовувати:
У цьому випадку файли з папки /install/classes , що знаходяться в папці оновлення, скопіюються в папку /local/modules/quintura.search/classes .
При випуску наступних оновлень може виникнути потреба встановити його залежність від нових модулів. Посилання на версії модулів, від яких залежить це оновлення, містяться у файлі version_control.txt. Але необхідно пам'ятати, що саме оновлення із залежністю не буде за промовчанням вимагати встановлення зазначених модулів. У цьому випадку можливі два варіанти:
- Оновлення все одно встановлювати, перевіряти наявність потрібного модуля вже у функціоналі модуля.
- Додати до коду оновлення перевірку на потрібний модуль, і за його відсутності виводити помилку користувачеві. Оновлення не буде встановлено, якщо присвоїти змінній $errorMessage рядок повідомлення.
Примітка: При створенні архіву з рішенням/оновленням через консольну утиліту tar в MacOS потрібно попередньо виставляти змінну оточення: export COPYFILE_DISABLE=true
Як оновити Бітрікс24 Месенджер
Windows.
Про програму > Перевірити оновлення.
macOS.
Бітрікс24 > Перевірити оновлення.
Якщо оновлення є, Бітрікс24 запропонує встановити нову версію.
Детальна відповідь
Щоразу, коли ви запускаєте програму Бітрікс24, відбувається перевірка оновлень. Якщо ви пропустили пропозицію встановити нову версію, можна зробити це вручну.
Windows. Правою кнопкою миші клацніть на іконку Бітрікс24 у вікні сповіщень. Натисніть на Три точки (.). Виберіть пункт Про програму. Натисніть Перевірити оновлення. Якщо версія застаріла, Бітрікс24 запропонує завантажити нову.
macOS. У меню Бітрікс24 натисніть Перевірити оновлення. Якщо оновлень немає, ви побачите відповідне повідомлення. Якщо є, Бітрікс запропонує встановити нову версію.
Рекомендуємо прочитати: