В настоящее время во многих CMS с открытым кодом наблюдается тенденция к стандартизации. В большинстве случаев за основу берется PHP-Nuke. Это выражается и во внешнем виде, и в структуре. Модульная система построения движка, сильная привязанность к заранее определенным макетам, ограниченность структуры — все это приводит к тому, что возможности кастомизации сайта сильно затруднены. Создается положение, в котором просто невозможно выпрыгнуть из стен, возведенных самим движком.
Прогрессивная CMS Mambo лишь исправляет отдельные недостатки, но не решает проблему полностью. Безусловно, в некоторых случаях данный «недостаток» вовсе не является критичным и в некотором плане даже упрощает работу по созданию сайта, так как отпадает необходимость вручную формировать структуру. С другой стороны, в некоторых ситуациях требуется создать сайт, не привязанный к функциональным особенностям движка. В таких случаях на помощь веб-мастеру приходят различные инструменты. Одним из таких по праву может считаться Open Constructor — CMS, обладающая необычайной гибкостью, позволяющей разрабатывать сайты любого формата.
В некоторых ситуациях требуется создать сайт, не привязанный к функциональным особенностям движка
Немного об истории проекта. В 2002 году в компании eSector Solutions была разработана первая версия «Веб Конструктора», а в 2006 году его бесплатный аналог (или последователь — кому как нравится) получил свое имя — Open Constructor. Что интересно, на данный момент сама компания довольно успешно осуществляет свою коммерческую деятельность: разрабатывает различные веб-технологии, занимается дизайном и так далее. Разработчиком, системным архитектором и «отцом» Open Constructor является Санжар Ахмедов, информационным архитектором — Сергей Капустин, дизайнерами интерфейса — Андрей Егоров и Ильвира Насреддинова. Кроме того, над проектом работают и другие люди: программисты, редакторы и так далее — всего в команде около десяти человек. CMS распространяется по GNU General Public License* в виде открытого кода и предназначена для различных видов сайтов, в том числе коммерческих.
На данный момент у проекта нет крупных сайтов поддержки, где пользователи могли бы обсудить достоинства и недостатки проекта, а также поделиться своими проблемами, но существует ряд вспомогательных ресурсов. Например, на Google Code дан список запланированных работ, направленных на устранение тех или иных недостатков движка. В случае если вы столкнетесь с какой-либо проблемой, описанной здесь, вы можете быть уверены, что вскоре она будет разрешена. Кроме того, на официальном сайте проекта постоянно публикуются статьи, касающиеся особенностей использования Open Constructor.
Технические данные
Open Constructor, как уже было сказано, — это совершенно иная ветвь развития CMS. Будучи не скованным ограничениями движка, веб-мастер свободен как в выборе содержания своего сайта, так и в способах реализации задуманных идей. Давайте посмотрим, что именно делает Open Constructor столь заманчивым.
1. Архитектура системы. Разработчик сам выбирает структуру и иерархию сайта. Разделы больше не распадаются равномерно, как кусты (модули от ядра, подразделы от разделов и тому подобное), а могут быть скомпонованы так, как хочет этого владелец.
2. Независимость контента от дизайна. Зачастую во многих CMS сначала приходится разрабатывать дизайн и создавать тему (скин), а только потом заниматься размещением содержимого. Open Constructor позволяет разрабатывать сайт вообще без дизайна и лишь после приступить к нему.
3. Отсутствие необходимости править файлы движка. Все, что может потребоваться для сайта, можно найти в администраторской панели.
4. Независимость от требований к содержанию сайта. При наличии необходимых знаний возможно создание проекта любого уровня (от блога до интернет-магазина).
CMS может похвастаться наличием большинства современных технологий
Помимо этого CMS может похвастаться наличием большинства современных технологий: поддержкой RSS и XML, WYSIWYG-редактором, интеграцией со Smarty Templates Engine* и так далее.
Увы, развитие движка идет не так быстро, как хотелось бы. Разработчики планируют внедрить поддержку MySQL 5 в ближайшей версии и только собираются разрешить проблему несовместимости с PHP5. Кроме того, для работы с движком необходим FTP-сервер вне зависимости от физического расположения сервера. Данные ограничения могут серьезно повлиять на использование движка, поэтому о хостинге стоит позаботиться заранее.
Общие системные требования выглядят так:
- PHP 4.0 с выключенным безопасным режимом;
- MySQL версии не ниже 4.1;
- FTP-сервер.
Кроме того, при работе с администраторской панелью требуется наличие браузера IE (в случае с Mozilla Fierfox возможен вариант с использованием IEtab).
Как и все CMS, Open Constructor использует модули. Но при этом они не ограничивают функциональность сайта. Это всего лишь предопределенный набор инструментов, с помощью которых можно формировать практически любые страницы. По сути, модули в Open Constructor можно сравнить с типами данных. Каждый модуль отвечает за свой контент: часто обновляемые записи (например, новости), графика (галереи) и тому подобное. Уже на их основе веб-мастеру предлагается создавать структуру сайта и его отдельные элементы.
В CMS включены следуюшие модули: HTML-текст (для создания обычных страниц), публикации (новости), календарь событий, фотогалерея, статьи (в отличие от публикаций, представляют собой оформленный текст, который может быть разбит на главы), пул текстов (для ротации небольших текстов или картинок), гостевая книга, PHP-код (для внедрения пользовательских PHP-скриптов в страницу), файлы и, наконец, гибридные данные. Последние служат для создания страниц, не подходящих ни к одному вышеперечисленному модулю. Именно с их помощью можно создать страницу с любым содержанием.
Полевые испытания
Администраторская панель Open Constructor состоит из шести элементов, каждый из которых отвечает за ту или иную функцию. Хотя на самом деле говорить об этом инструменте как об администраторской панели не совсем верно, так как владелец сайта может регулировать доступ к ней таким образом, чтобы даже не обладающий администраторскими правами посетитель мог выполнять те или иные действия (например, размещать статьи). Давайте взглянем на каждый из элементов.
«Карта сайта» позволяет создавать объекты и организовывать иерархию. Кроме того, именно здесь задается расположение блоков на той или иной странице. Для каждой страницы может быть применен тот или иной уже существующий шаблон или же создан совершенно новый. Здесь же задаются настройки разделов: метатеги, права доступа и тому подобное.
Раздел «Данные» служит непосредственно для управления содержимым сайта, то есть позволяет наполнять разделы различного рода ресурсами. Здесь также используется иерархическая система, что позволяет минимизировать затраты времени при необходимости размещения данных различного содержания (например, если нужно написать статью и тут же перейти в галерею, чтобы залить несколько фотографий). В зависимости от того, какой раздел мы создали, информация в нем будет иметь различный статус. Если это просто статья, то нам будет доступен только текстовый редактор, если же это файловый каталог, то мы можем либо закачать какой-либо объект, а затем добавить в список файлов на отдельной странице, либо просто указать ссылку. Но, ввиду того что в этом движке нет стандартных модулей, в данном случае, чтобы создать список, придется произвести некоторые манипуляции. Этому вопросу посвящена отдельная статья на официальном сайте.
Раздел «Объекты» выполняет роль промежуточного звена между разделами и конечными материалами. Он позволяет каталогизировать данные и отсортировать их по различным признакам для более удобного администрирования.
«Шаблоны», как не трудно догадаться, позволяют легко редактировать внешний вид страниц. Для каждого типа страниц (а их число не ограничено) может существовать свой шаблон. Правятся шаблоны вручную с использованием Java Applet. По сути, мы редактируем код, но в несколько упрощенном режиме.
«Каталог» выполняет самые различные функции. Он позволяет различным авторам размещать собственные данные: статьи, файлы и тому подобное. Именно с помощью этого раздела сайт можно превратить в любого рода ресурс. Создав те или иные объекты, веб-мастер определяет конечное содержимого сайта. Например, можно создать раздел с товарами для онлайн-магазина, и каждый товар в таком случае будет являться объектом. При этом товары могут быть отсортированы, например, по странам-производителям путем создания простейшей иерархии в древе.
Наконец, раздел «Пользователи» служит для разграничения полномочий среди администраторов, а также для создания различных групп пользователей с теми или иными правами доступа. В этом резделе мы создаем различные группы. Для каждой группы существует набор прав (например, право редактировать документы), а каждый пользователь имеет принадлежность к одной или нескольким группам. При этом вовсе не обязательно, что пользователем будет являться только один отдельно взятый человек. Например, можно создать главного администратора, под которым в администраторскую панель будут заходить сразу несколько человек.
Безусловно, на первых порах неподготовленному веб-мастеру будет сложно разобраться в структуре и иерархии движка
Безусловно, на первых порах неподготовленному веб-мастеру будет сложно разобраться в структуре и иерархии движка. Путаница, которая, наверное, возникнет у человека, только что познакомившегося с системой, скорее всего, будет объясняться нестандартностью решения организации работы с CMS. С другой стороны, отпадает необходимость использовать дополнительные ресурсы. Все, что требуется для сайта, входит в стандартный набор. Владелец может пользоваться доступными шаблонами, а может создавать что-то новое и необычное или, например, разграничить между различными пользователями их данные, что позволяет не только не запутаться в содержимом, но и отслеживать, кто, сколько и что добавил.
Таким образом, Open Constructor — это профессиональный инструмент для тех, кого стесняют стандартные CMS. При этом стоит помнить, что этот движок требует тщательного изучения и не отличается особой легкостью освоения. Если простейший сайт, используя Open Constructor, можно создать буквально на час, то на более сложный ресурс без наличия необходимых знаний уйдет гораздо больше времени. С другой стороны, опытный пользователь благодаря этой CMS с легкостью сможет реализовать такие идеи, которые раньше были доступны только владельцам специализированных или комплексных систем.
Ссылки по теме
Статья получена: hostinfo.ru