
Ну что ж, похоже настало это время. Релиз Explay CMS 2.1. Чтобы скачать, надо сначала посетить промо-страницу, но лучше дочитать до конца :)
Вступление
С момента релиза версии 2.0 прошли почти 4 месяца, и я могу заверить: прошли не зря. Каждый день я убеждался, что не умею программировать на PHP и каждый день я пытался это исправить. Исправил все что мог, в пределах разумной совместимости версий :) В принципе, из старого осталась только часть структуры таблиц в безе данных, движок переписан полностью, а в некоторых местах даже по несколько раз.
О главном

Надо заметить, что процесс обновления достаточно незауряден, прост и, в тоже время, стабилен с технической стороны. Поэтому, надеюсь, он найдет свое место в других бесплатных CMS.
О новом

Кроме пользователей очень хотел улучшить жизнь программистам, поэтому переписал (в некоторых местах ограничился рефракторингом) и прокомментировал весь код. Немного улучшилась и сама БД, что позволило немного сократить кол-во запросов и повысить производительность. Посчитав, что ООП и пародии MVC мало написал еще и документацию.
Тех, кто будет устанавливать Explay CMS с нуля ждет «мастер установок», который проверит конфигурацию сервера, а так же настроит права на файлы и папки.
Открытость для разработчиков
Теперь текущую версию кода можно посмотреть и скачать из SVN на Google Code. И я очень надеюсь, что после выхода этого релиза найдутся люди, которые будут непосредственно учавствовать в разработке Explay CMS и сообщество разработчиков выйдет на новый уровень.
Список изменений относительно версии 2.0
- Создана система обновлений
- UTF-8
- Переписан модули статей (попытка соответствовать MVC)
- RSS лента всех комментариев
- Создан поиск по статьям
- К странице пользователя теперь можно обращаться по его логину (аналогично и с блогом пользователя)
- Дописано ядро, модифицированы классы БД и шаблонов
- Написано 3 новых класса: User, explayFroms, imageResize
- Абсолютно новый шаблонизатор
- Добавлена возможность создания статичных переменных для шаблонов
- В класс MySQL добавлены исключения, что позволяет определить реальное место ошибки
- Большая часть кода комментирована
- Оптимизирован весь код, в том числе и администраторская часть
- API & AJAX переместились в модули и работают аналогично им
- Теперь используется движок AJAX`а от jQuery
- Маленькие аватары пользователей теперь кешируются, а не создаются каждый раз
- Поменялся дизайн админпанели
- В той же админпанели теперь настраиваемый рабочий стол
- Создан быстрый поиск по заголовкам статей
- В профиль пользователя добавлены новые поля: дота рождения и пол
- Добавлена возможность смены пароля
- Статьи тепрь можно сохранять в черновики
- Создан установщик, проверяющий права на файлы и конфигурацию сервера
- В базовом комплекте идет плагин Sape
- Настройки сайта почищены и переведены из таблицы в БД в PHP-файл
- Новый блок для модуля «Люди»
- В комплекте последняя версия TinyMCE
- Исправлены все ошибки версии 2.0
Обновление версии 2.0 до 2.1
К моему сожалению, мне не удалось добиться полной совместимости двух версий. Конечно существует файл обновления, но он обновляет только структуру таблиц в базе данных. Основная проблема при обновлении ждет вас в шаблонах: т.к. изменился шаблонизатор, ни один старый шаблон не будет работать под 2.1. Если вы не меняли
С кодировкой UTF-8, возможно, тоже придется повозится. Не смотря на то, что имеется файл меняющий кодировку таблиц базы данных, лучше подстраховаться и сделать полный бекап.
Планы
В скором времени я планирую закрыть 2-ю ветку и начать разработку с чистого листа для создания нормальной архитектуры.
Для баг-репортов есть сообщество, мой e-mail и личная почта на Хабре.
Жду объективной критики, а не фраз типа: «Все надо переписать под ZF — код гавно!». Если Вы так считаете — обоснуйте.
Ссылки по теме:
Промо-страница — скачать Explay cms и требования к хостингу
Сообщество разработчиков
Проект на Google Code
Документация
Статья в Википедии