Cotonti / Open Source PHP Content Management FrameworkContent Management Framework

Обновление расширений

Документация / Администрирование / Обновление расширений

Как Cotonti обновляет расширения

Вы, вероятно, читали об обновлениях в Cotonti и знаете, как обновлять систему в целом. В этой статье обновление расширений рассматривается подробно. Слово "расширение" означает "модуль" или "плагин" в Cotonti.

#1. Когда расширения обновляются

Расширения обновляются в двух случаях:

  1. Когда вы запускаете скрипт install.php, чтобы обновить вашу систему, как описано здесь. В этом случае скрипт обновления проверяет версии всех установленных расширений и версии setup-файлов на диске и обновляет только те из них, для которых доступна более новая версия (по номеру версии).
  2. Когда вы нажимаете на кнопку "Обновить" в Администрировании → Расширениях → Extension_name. В этом случае система пытается обновить расширение вне зависимости от установленной и доступной версий.

Строго рекомендуется использовать функцию "Обновить" вместо переустановки расширений. Переустановка была необходима в Cotonti 0.6.x, но более не нужна. Обновление работает гораздо разумнее.

#2. Процесс обновления отдельного расширения

Для каждого обновляемого расширения Cotonti выполняет следующее:

  1. Вычисляет разницу между установленной в базе версией расшерения и версией setup-файла (extension_name.setup.php).
  2. Удаляет текущие хукочасти расширения и устанавливает все заново. Это нужно, если в расширении появились новые части или если старые были удалены / изменилась мета-информация (например, используемые хуки).
  3. Обновляет конфигурацию. Добавляет новые опции, если таковые появились. Удаляет опции, которые были удалены из расширения. Изменяет и сбрасывает те опции, для которых изменился тип. Остальные опции оставляет неизменными.
  4. То же самое производит с конфигурацией структуры.
  5. Обновляет маски Auth/Lock для групп 'members' и 'guests'.
  6. Выполняет PHP и SQL патчи из папки setup последовательно, исходя из различий установленной и новой версии.
  7. Обновляет версию плагина в базе и очищает кеш.


Комментарии отсутствуют
Добавление комментариев доступно только зарегистрированным пользователям