• Кто писал свою CMS?

    @svetlika
    Если вкратце, то обновление представляет собой zip-архив со специальной структурой.
    Скрипт обновления берет этот архив, распаковывает и выполняет шаги, которые есть (почти любой шаг может отсутствовать) в определенном порядке.
    1. Выполняет, если есть код php, который может обновлять какие-то очень специфические вещи и который должен быть выполнен перед апдейтом БД
    2. Выполняет, если надо, апдейт БД (запросы к MySQL)
    3. Выполняет, если есть код php после обновления БД
    4. Заменяет файлы скриптов CMS, которые были обновлены, файлами из архива
    5. Выполняет, если есть, код php после обновления файлов скриптов
    6. Исправляет номер версии системы, выводит пользователю перечень того, что было изменено в данном апдейте
    т.е. это такой полуавтоматический способ получился.
    но ввиду большого количества проектов на нашей CMS очень облегчает задачу обновления движка CMS.

    Ну и, по возможности, все изменения в код CMS вносятся с учетом поддержки того, что было в старых версиях. Т.е. поля из БД, например, не удаляются