Оновлення партнерських модулів бітрікс

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

Нерідко буває в нашій роботі, коли для вирішення поставленого завдання доводиться змінювати який-небудь партнерський модуль, іноді навіть переписувати гарненько доводиться, але тут постає питання про втрату і блокування його оновлень, тому що при установці оновлень затруться або все, або тільки змінені розробником файли модуля.

З партнерськими модулями ні все так страшно, деякі навіть не впливають на роботу Бітрікс, просто фіксуються в системі, що встановлені, а все інше роблять на сайті компоненти, тобто взагалі ніяк не впливають на Бітрікс.

А ось Бітрікс модулі змінювати заборонено! Ні в якому разі не чіпайте, при оновленні Бітрікс все повернеться до вихідного стану, якщо не зламається щось або не почне глючити.

Що оновлюється при установці оновлень модуля Бітрікс?

Я, як розробник модуля, можу вивантажувати щойно змінені файли модуля, так і абсолютно всі файли, а оновлюються завжди такі папки, в яких лежать і компоненти модуля і самі модулі, як партнерські, так і Бітрікс, різні тільки простору імен:

Для наочного прикладу розповім, що оновлюється в модулі Форма зворотнього зв'язку + конструктор форм
У моєму модулі оновлюється всього три папки і все їх вміст:

  • /bitrix/modules/api.feedback/
  • /bitrix/components/api/main.feedback/
  • /bitrix/js/api.feedback/

Де api - це моє партнерське зарезервоване простір імен, унікальне для Тюнінг-Софт. ніхто їм не може скористатися, все компоненти від всіх моїх модулів будуть встановлюватися і оновлюватися в цьому просторі імен.

Але як завжди буває, скрізь є винятки, наведені вище папки відповідають архітектурі Бітрікс, але партнери можу і ще куди-небудь закинути файлик модуля і оновлювати його, для прикладу, в корені сайту може бути оновлювана папка / ajax / або той же шаблон сайту в / bitrix / templates /. тут вже хто на що здатний виходить або дивлячись яке завдання у модуля.

Як заблокувати поновлення модуля в разі, якщо він був змінений?

Якщо ви змінили партнерський модуль, то звичайно краще заблокувати його поновлення, тому що навіть якщо не Ви, то власник сайту, або навіть інший розробник може оновити його, не знаючи, що він змінювався і все полетить до біса, а якщо немає резервної копії сайту, пиши пропало ..

Щоб заблокувати поновлення як мого модуля, так і будь-якого іншого, знайдіть у відповідному модулі в настановної папці файл version.php
/bitrix/modules/api.feedback/install/version.php

І замініть версію модуля на яке-небудь більше число, до якого модуль не зможе дорости, наприклад, замість версії 2.2.0 впишіть версію 1000 і модуль більше не проситиме оновлень.

Оновлення партнерських модулів бітрікс

До змін модуль ще просив оновлень

Оновлення партнерських модулів бітрікс

Після того, як ми прописали версію модуля 1000, він перестав просити оновлень.

Оновлення партнерських модулів бітрікс

висновок

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