Всем доброго времени суток! Уже довольно давно, как мое увлечение создания движка для сайта стало занимать львиную долю свободного времени. А поскольку летом я был полностью предоставлен самому себе, то за компьютер садился как за работу :) При этом меня даже не останавливает отсутствие хоть сколько ощутимого дохода, это как зависимость. Надеясь, что кому-то я все-таки помогу, хочу поделиться результатом своей работы.
Explay CMS — это система управления социальными сетями или блого-социальными сообществами. Она по-прежнему совершенно бесплатна и распространяется под лицензией GNU GPL 3 версии. Напомню основные характеристики:
Версия 3.1 является эволюционным продолжением версии 3.0. По ходу разработки были исправлены все известные баги и доработаны основные функции. В новой версии CMS приобрела полноценную панель администратора, которая дает возможность реализовать основную функцию, заявленную мной при релизе 3.0, — управление полями публикаций, пользователей и вообще всего-всего.
Далее о нововведениях подробно и по порядку:
Один из основных моментов в последней версии — это интерфейс для работы с модулями. Теперь пользователь может скачать модуль с официального сайта и установить его из админпанели. Разработчик же может «экспортировать» (создать установочный архив) разработанный им модуль и разместить его на оф. сайте. Поскольку разработчик может создавать собственные типы данных и использовать их в собственном модуле, то ему доступна функция экспорта самих типов данных. В будущих версиях появится возможность просмотра каталога модулей и их установки прямо из панели администратора, по аналогии с wordpress.
Что касается самих изменениях в модулях, то была добавлена возможность переопределять методы, языковые константы и права доступа, что позволяет не потерять внесенные изменения при обновлении.
К слову, теперь на официальном сайте, при размещении модуля можно (а точнее нужно) описывать его API. В качестве примера я описал API, доступное из шаблонов, для стандартных модулей.
Как выше уже было сказано — теперь вы самостоятельно можете настраивать (добавлять/изменять/удалять) свойства типов данных: публикаций, фотографий, пользователей, блогов и вообще всего-всего. Допустим, если для ваших публикаций (статей, постов или топиков — как вам угодно) требуется добавить возможность прикрепления изображения, то с помощью простейших манипуляций, в форме редактирования публикации появится поле для загрузки изображения (при этом вы можете настроить выходной формат и размер изображения). Также вы можете добавить обычные текстовые поля и даже поля для тегов.
В одном из комментариев на Хабре я прочитал про то, что сейчас только в двух отечественных CMS (Bitrix и UMI.CMS) можно создавать «справочники» (выпадающие списки), так вот теперь это доступно и в Explay :)
Подобные манипуляции со свойствами (полями) типов данных возможны благодаря налаженной ORM-системе. Здесь следует отметить, что для каждого типа данных выделяется отдельная таблица в БД, в которой и хранятся объекты нужного типа. При добавлении, например, нового текстового поля к публикации создается новый столбец в таблице. Может это не самый идеальный подход, но зато он позволяет оптимизировать таблицу и тем самым повысить быстродействие всей системы, а также уменьшить головную боль при переносе сайта с другой или на другую систему.
Панель администратора получилась довольно легкой, без излишеств. Администраторам теперь доступны такие маленькие радости как файловый менеджер, модерация публикаций, удаление пользователей, создание бекапа сайта, управление статичными страницами, перетаскивание ссылок-иконок в избранное и немногое другое.
Здесь нововведений не много, вот основные их них:
Еще одно нововведение, которое не вписывается ни в один параграф, — это новый модуль Баннеры. Разработчику сайта дается возможность выделить в шаблонах места, где могут располагаться т.н. баннеры (по сути баннер представляет из себя кусок HTML-кода). Баннеры позволяют легко управлять блоками на странице со статическим содержимым, не прибегая к редактированию шаблонов.
Все сборки и обновления, как обычно, выкладываются на Google Code в разделе загрузок. Рядом находится SVN.
Системные требования: PHP 5.2, MySQL 5, XSLT, Multibyte string, Zlib, GD 2.
PHP 5.3 пока не поддерживается.
Для новичков на оф. сайте существует раздел FAQ, где вы можете получить ответы на популярные вопросы и советы по решению возможных ошибок. Для тех, кто планирует заняться разработкой модулей существует документация, описывающая принципы работы модульной системы, а так же основные классы ядра.
Я с удовольствием безвозмездно помогу оказать несложную тех-поддержку и ответить на все интересующие вопросы.
Спасибо за внимание!
Explay CMS — это система управления социальными сетями или блого-социальными сообществами. Она по-прежнему совершенно бесплатна и распространяется под лицензией GNU GPL 3 версии. Напомню основные характеристики:
- Коллективные блоги
- Фотоальбомы
- Дружеские связи и новости друзей
- Комментарии
- Рейтинги
- Внутренняя почта
- Система обновлений
Версия 3.1 является эволюционным продолжением версии 3.0. По ходу разработки были исправлены все известные баги и доработаны основные функции. В новой версии CMS приобрела полноценную панель администратора, которая дает возможность реализовать основную функцию, заявленную мной при релизе 3.0, — управление полями публикаций, пользователей и вообще всего-всего.
Далее о нововведениях подробно и по порядку:
Модули
Один из основных моментов в последней версии — это интерфейс для работы с модулями. Теперь пользователь может скачать модуль с официального сайта и установить его из админпанели. Разработчик же может «экспортировать» (создать установочный архив) разработанный им модуль и разместить его на оф. сайте. Поскольку разработчик может создавать собственные типы данных и использовать их в собственном модуле, то ему доступна функция экспорта самих типов данных. В будущих версиях появится возможность просмотра каталога модулей и их установки прямо из панели администратора, по аналогии с wordpress.
Что касается самих изменениях в модулях, то была добавлена возможность переопределять методы, языковые константы и права доступа, что позволяет не потерять внесенные изменения при обновлении.
К слову, теперь на официальном сайте, при размещении модуля можно (а точнее нужно) описывать его API. В качестве примера я описал API, доступное из шаблонов, для стандартных модулей.
Управление типами данных и их свойствами (полями)
Как выше уже было сказано — теперь вы самостоятельно можете настраивать (добавлять/изменять/удалять) свойства типов данных: публикаций, фотографий, пользователей, блогов и вообще всего-всего. Допустим, если для ваших публикаций (статей, постов или топиков — как вам угодно) требуется добавить возможность прикрепления изображения, то с помощью простейших манипуляций, в форме редактирования публикации появится поле для загрузки изображения (при этом вы можете настроить выходной формат и размер изображения). Также вы можете добавить обычные текстовые поля и даже поля для тегов.
В одном из комментариев на Хабре я прочитал про то, что сейчас только в двух отечественных CMS (Bitrix и UMI.CMS) можно создавать «справочники» (выпадающие списки), так вот теперь это доступно и в Explay :)
Подобные манипуляции со свойствами (полями) типов данных возможны благодаря налаженной ORM-системе. Здесь следует отметить, что для каждого типа данных выделяется отдельная таблица в БД, в которой и хранятся объекты нужного типа. При добавлении, например, нового текстового поля к публикации создается новый столбец в таблице. Может это не самый идеальный подход, но зато он позволяет оптимизировать таблицу и тем самым повысить быстродействие всей системы, а также уменьшить головную боль при переносе сайта с другой или на другую систему.
Панель администратора
Панель администратора получилась довольно легкой, без излишеств. Администраторам теперь доступны такие маленькие радости как файловый менеджер, модерация публикаций, удаление пользователей, создание бекапа сайта, управление статичными страницами, перетаскивание ссылок-иконок в избранное и немногое другое.
Нововведения с пользовательской стороны
Здесь нововведений не много, вот основные их них:
- Создан «прямой эфир»
- Добавлена возможность восстановления пароля
- Добавлена возможность пользователям удалять свой профиль (точнее оставлять администраторам заявки на удаление)
Еще одно нововведение, которое не вписывается ни в один параграф, — это новый модуль Баннеры. Разработчику сайта дается возможность выделить в шаблонах места, где могут располагаться т.н. баннеры (по сути баннер представляет из себя кусок HTML-кода). Баннеры позволяют легко управлять блоками на странице со статическим содержимым, не прибегая к редактированию шаблонов.
Где взять?
Все сборки и обновления, как обычно, выкладываются на Google Code в разделе загрузок. Рядом находится SVN.
Системные требования: PHP 5.2, MySQL 5, XSLT, Multibyte string, Zlib, GD 2.
PHP 5.3 пока не поддерживается.
Тех-поддержка
Для новичков на оф. сайте существует раздел FAQ, где вы можете получить ответы на популярные вопросы и советы по решению возможных ошибок. Для тех, кто планирует заняться разработкой модулей существует документация, описывающая принципы работы модульной системы, а так же основные классы ядра.
Я с удовольствием безвозмездно помогу оказать несложную тех-поддержку и ответить на все интересующие вопросы.
Спасибо за внимание!