Cotonti – модульная система управления содержимым и фреймворк на базе PHP и MySQL. Для конечного пользователя Cotonti является CMS со среднетиповым набором возможностей, в первую очередь предназначенной для создания онлайновых сообществ, коммерческих и персональных сайтов. Она также может быть расширена для таких ресурсов, как блоги, сайты электронной коммерции, новостные сайты, игровые кланы, корпоративные порталы и др..
Для разработчика Cotonti представляет собой минималистичный каркас управления содержимым и набор модулей, реализующих стандартные возможности для конкретных типов веб-сайтов. Прикладная логика построена в стиле традиционного скриптинга и базируется на API и моделях, предоставленных фреймворком и модулями.
Типовая установка веб-сайта производится с использованием лишь пользовательского интерфейса и панели администрирования, и не требует навыков программирования. Для создания веб-сайта с нестандартными возможностями могут потребоваться навыки PHP и MySQL программирования или HTML/CSS верстки – в зависимости от типа задачи. Разметка содержимого, разметка макета, программирование приложений и локализация полностью отделены друг от друга. Такой подход хорошо подходит для небольших и средних команд, занимающихся реализацией веб-проектов.
За годы своего развития Cotonti приобрела схожие с Drupal черты в таких аспектах своего построения, как процедурное ядро, стандартный загрузчик, модульная архитектура и ряд базовых функций, которые присутствуют и во многих других системах. Уникальными же чертами Cotonti можно считать следование принципам «собирательного фреймворка» и практически неограниченную настраиваемость внешнего вида и поведения.
Архитектура Cotonti
Это достигается за счёт поддержки различных видов расширений. Некоторые из таких расширений поставляются в базовом пакете. Другие могут быть получены у сторонних разработчиков на свободной и коммерческой основе.
Основой здания является фундамент или библиотеки ядра (API), которые также обеспечивает всю инфраструктуру, используемую остальными элементами здания. На фундаменте стоят блоки, в которых заключены комнаты. Эти блоки называются модулями. Каждый модуль представляет собой особый вид пространства, населяемого пользователями сайта (кухня, гостиная, ванная комната). В комнатах находятся элементы интерьера (мебель, бытовая техника, электроника), называемые плагинами. И, наконец, отделка фасада и выбор украшений для него являются темами.
Они имеют общее название – расширения.
Плагины могут иметь особые части, которые «вклиниваются» в эти точки входа, изменяя поток управления и добавляя к выходному коду переменные и блоки.
Особенности Cotonti
Это позволяет графическим дизайнерам создавать темы (в предыдущих версиях скины) без каких-либо знаний PHP. Cotonti позволяет создавать темы путём модификации тем, созданных участниками сообщества, или «с нуля» путём замены элементов HTML-кода на TPL-теги.
веб-форумы, средства администрирования, новостную систему, опросы, средства загрузки пользовательских файлов, создания страниц и регистрации пользователей. Дополнительный функционал может быть придан базовой комплектации при помощи плагинов. В качестве системы управления содержимым, Cotonti обеспечивает максимальную ориентированность на пользователя и практически не требует вмешательства модераторов.
Система спроектирована для использования в качестве каркаса или основы с целью не допустить «раздутия» ядра и предоставить администраторам конкретных сайтов право выбора необходимого дополнительного функционала. Данный подход всегда являлся главной философией разработки движка. Cotonti поддерживает плагины для Seditio, а также постоянно растущую библиотеку собственных плагинов.
Для этого каждый зарегистрированный пользователь может выбрать подходящий ему язык отображения сайта.
Основные возможности Cotonti
Для пользователей, имеющих опыт использования других систем, станет полезным краткий обзор основных возможностей движка:
Примечание
Cotonti распространяется на условиях лицензии Berkeley Software Distribution License с эксклюзивным правом на использование кода от Seditio/Neocrome и распространение его на тех же условиях. Это делает Cotonti бесплатным как для некоммерческого, так и для коммерческого использования, при условии сохранения оригинальных авторских прав.
Ссылки