Здравствуйте, уважаемые посетители моего скромного блога для вебразработчиков и web мастеров ZametkiNaPolyah.ru. Этой статьей, я хотел бы открыть рубрику Заметки о создание сайтов. Кто-то может сказать, что книг, статьей и бесплатных видео курсов в сети масса и данную рубрику не стоило бы и открывать. Но у меня своё мнение(впрочем как и всегда) на этот счет. Попробую привести аргументы в защиту рубрики о создание сайтов. Начинающим веб разработчикам и вебмастерам всегда трудно, всегда есть огромный недостаток информации, а на форумах сообществ Joomla! или Drupal (на Drupal почему-то реже) новичков либо высмеивают, либо не дают им вразумительных ответов на поставленные вопросы, а иногда бывает, отправляют по ссылке технической документации, что в принципе верно, но не всегда людям понятно. И в этой рубрике я хочу поговорить о нюансах и тонкостях работы с такими системами управления сайтами (CMS), как Drupal и Joomla!. Сравнивать я их не берусь, тут как говорится на вкус и цвет товарищей нет. Кому-то больше по душе CMS Joomla!, а кто-то в восторге от модульности CMS Drupal. А в данной публикации мы просто поговорим о том, что же такое система управления контентом (CMS) и можно ли не используя CMS сделать сайт.
CMS — система управления контентом
Аббревиатуру CMS можно расшифровать как Content Management Software или Content Management System, оба названия будут верными, первое переводится как программное обеспечение для управления содержимым, второе название можно перевести как система управления контентом, контент это не что иное как содержимое сайта. А если уж говорить совсем по простому, то CMS — это движок сайта.
CMS — это специальная программа, у которой есть определенные функции работы с информацией или контентом, под словом информация в данный момент я понимаю, аудио и видео файлы, различные тексты, картинки, различные документы, архивы и прочее. CMS — это программа или можно даже сказать набор программ, который позволяет хранить информацию в удобной форме, а так же предоставлять её конечному пользователю, посетителям наших сайтов.
Под CMS, на страницах своего блога я буду иметь ввиду программу, которую можно установить на сервере хостинг-провайдера с целью хранения, изменения и предоставления информации конечному пользователю.
Основные функции системы управления контентом
И так мы уже разобрались с вопросом, что такое CMS. Теперь давайте посмотрим, какими функция должна обладать CMS, для того, что бы ее можно было использовать в сайтостроение.
Система управления сайтами – это набор взаимосвязанных программ или скриптов, которые предназначены для автоматизации управления сайтами и отдельными частями внутри сайта: макетами страниц, шаблонами вывода данных можете называть это темами для сайта или макеты сайта(смысл у этого всего один — оформление сайта), структурой сайта(ссылки, разделы, категории, рубрики, навигация и прочее), информационным наполнением(статьи, тексты, товары, аудио и видео файлы, картинки, каталоги и прочее), пользователями и правами доступа(регистрации на сайте, модерирование сайта, администрирование сайта), а также по возможности предоставляющий дополнительные сервисы: списки рассылки, ведение статистики, поиск по сайту, средства взаимодействия с пользователями(такими как обратная связь или комментарии и чаты) и много-многое другое.
Из всего выше сказанного становится ясно, что любая система управления контентом должна состоять из двух частей: первая часть отвечает за управление сайтом и называется административной или просто админка сайта, вторая часть отвечает за взаимодействие с клиентами или посетителями и называется внешней именно её и видят посетители — внешняя часть сайта обычно состоит из HTML-страниц, которые генерируются при запросе клиента к серверу.
Административная часть сайта и внешняя часть сайта хоть и разделены, но обычно используют одно место хранения информации — чаще всего это реляционные базы данных(в простых проектах, обычно используется сервер баз данных MySQL).
В базе данных обычно хранится информация, которая содержится на сайте или контент, а также служебная информация, которая описывает структуру сайта, права доступа к CMS и прочее. Когда посетитель сайта запрашивает какую-то страницу, скрипт, который описывает эту страницу по полученным параметрам от пользователя, лезет в базу данных и формирует HTML-документ, который он отправляет посетителю и который впоследствии посетитель видит в окне браузера.
Выше сказанное относится к внешней части системы управления сайтами, но внешнюю часть нужно наполнить и не факт, что автор знает язык запросов SQL или даже язык разметки гипертекстов HTML, поэтому административная часть так же должна иметь графический интерфейс(желательно интуитивно понятный), при помощи которого автор сайта мог бы обращаться к базе данных, создавать новые страницы, изменять структуру сайта, одним словом администрировать сайт.
И так можно выделить три базовых функции системы управления содержимым:
- Создание — функция CMS, отвечающее за удобство создание, редактирование и наполнение страниц сайта, даже для людей не сталкивающихся с каким бы-то ни было программированием.
- Управление — это функция CMS, которая отвечает за безопасность сайта, то есть права доступа к сайту, способы хранения и передачи контента сайта, отслеживать изменения происходящие на сайте, взаимодействие с пользователями, а так же с другими web приложениями.
- Публикация — автоматическое предоставление содержимого сайта пользователю, вне зависимости от платформы, которую использует пользователь.
Практически все современные CMS предлагают сходные возможности, однако при желании их можно классифицировать по уровню задач, в которых используется та или иная CMS, а все системы управления контентом, с открытым исходным кодом можно расширять самостоятельно.
И всеми этими функциями обладают системы управления контентом с открытым исходным кодом Drupal и Joomla!. И не только этими функциями, но об этом позже. Так же я приведу небольшой список CMS с открытым исходным кодом, которые вы всегда сможете скачать и попробовать установить на своем домашнем компьютере используя например, Джентльменский Набор Web-Разработчика — Denwer.
Самые популярные и бесплатные CMS и CMF в России
Сразу оговорюсь, что точные цифры статистики, что бы составить рейтинг самых популярных CMS с открытым исходным кодом, получить невозможно, поэтому этот список очень таки субъективен и кто-то может с ним не согласиться и так приступим:
CMF Drupal — CMF и CMS
CMF Drupal — это система управления сайтами (CMS), а так же среда для создания вебприложений (CMF). От слова CMF некоторых бросает в дрожь и начинается душевная депрессия, поэтому блогов и форумов, где можно найти хоть сколько-нибудь полезную информацию о Drupal крайне мало и это хорошо.
Недостатки CMS Drupal:
Что бы создать шаблон или тему на Drupal, нужному обладать базовыми познаниями PHP и обладать логическим мышлением. По этой суровой причине, многие наши сограждане практикующие создание сайтов, считают, что все сайты на Drupal выглядят одинаково(одинаковые, так как большинство веб разработчиков просто берут и перекрашивают стандартные шаблоны).
Сей факт естественно не придает популярности CMS Drupal и уровень вхождения становится непомерно высоким. Так же к недостатка CMS Drupal можно отнести его высокую потребляемость, ресурсов от системы он требует значительных, но помоему еще никто не запрещал настроить кэш.
Данное явление ограничивает применение Друпала на дешевых хостингах, а так же на некоторых VDS. Но тут есть один нюансик, когда посещаемость вашего сайта достигнет 3000 человек, сайт будет работать, как под нагрузкой в 30 человек, ну примерно.
Достоинства CMS Drupal:
О достоинствах CMS Drupal можно говорить долго, нудно и упорно. У CMs Drupal множество модулей, великое множество модулей, на все случаи жизни. Вы даже представить себе не сможете сколько у Друпала модулей. У CMF Drupal шикарная система кэширования, другие бесплатные CMS нервно курят в сторонке. Еще одни достоинством Drupal является легкость для вебразработчика.
Так же у Drupal многочисленное и что самое главное грамотное сообщество, а еще ребята из сообщества Drupal самые отзывчивые и терпеливо отвечают на все, даже на самые идиотские вопросы. К Drupal вы сможете прикрутить все что угодно, когда угодно и сколько вам будет угодно. Используя CMF Drupal можно делать самые сложные проекты. В качестве работы, которых вы не будете сомневаться, это же CMF.
Выводы. На основе CMS Drupal вы сможете создать сколь угодно сложный сайт и не волноваться по поводу нагрузке на сайт, но для начинающих вебмастеров эта CMS не подойдет, по той причине, что должен быть хотя бы небольшой опыт программирования, и не плохие знания PHP.
WordPress — CMS для создания блога
CMS WordPress — это система управления сайтами, заточенная сугубо под блогера, использовать ее может человек, который даже не знает про HTML, благо шаблонов и тем оформления в сети масса и все это вы можете скачать на халяву.
Достоинства WordPress:
Использовать систему управления сайтами WordPress сможет даже ребенок. Под WordPress написано множество плагинов и шаблонов, сам WordPress легок до безобразия — как для сервера так и для владельца. Очень простое и понятное ядро, писать шаблоны на WordPress можно пачками в сутки.
Недостатки WordPress:
Недостатком WordPress является его скромный функционал, который ограничивается редактором для написания статьей и скачиванием плагинов различных видео и фото галерей. В последнее время все стали pro фотографами, у всех зеркалки и каждому необходимо поделится своими шедеврами.
Вывод. Подойдет для создания новостного сайта, блога, портфолио, видео и фото галерей, что бы сделать из WordPress что-то большее придется по потеть.
CMS Joomla! — самая популярная система управления контентом.
CMS Joomla! — это самая популярная в мире система управления контентом, очень проста в использование. Под нее написано множество расширений и компонентов, которые существенно расширяют ее функционал, но все это надо во-первых уметь настраивать, а во-вторых править.
Достоинство Joomla!:
Если быть откровенным, то Жумле до Drupala далеко. У CMS Joomla! есть множество компонентов и расширений, что обусловлено, простым и понятным контроллером. В сети вы сможете найти множество шаблонов Joomla, скачать и установить их на свой движок, но еще проще будет написать свой Joomla! шаблон, каких-то особых знаний, кроме посредственного изучения CSS и HTML не требуется.
Недостатки Joomla!:
Местами кривой код, гибкость некоторых настроек Joomla поражает своей несгибаемостью, в движке Joomla! достаточно большое количество лишнего кода, некоторым функция уже встроенным в движок вы никогда не найдете применения. Можно было бы и вырезать часть кода. В следствие чего загрузка веб страниц происходит очень и очень долго, а вот нормальное кэширование не встроено и приходится рыскать в поисках плагинов. Без специальных плагинов, индексации поисковыми системами будет не ахти.
Вывод. На Joomla! можно сделать проект любой сложности, при наличии прямых рук, логики и умения читать и разбирать чужой код, при не умении можно и ограничиться тем, что найдете в сети, благо, что расширений на Joomla! масса.
На мой взгляд, это три самых популярных CMS, а теперь вот вам небольшой списочек, с описанием, какая CMS зачем нужна:
- TYPO3 — гигант в области управления сайтами, CMS TYPO3 заточена на решение серьезных задач и метод научного тыка при использование данной системы управления контентом не подойдет, что говорить если техническая документация насчитывает 1500 страниц
- Cushy CMS — розовая тойота витц в области управления сайтами, лучше и не использовать, когда вы будете выкладывать свой проект с ядром Cushy CMS на хостинг, то вам потребуется отправить свои ftp данные разработчикам. Если вы параноик, то поберегите свое здоровье и нервы и не связывайтесь с этими хитрыми ребятами, откуда эти ребята я не знаю, но великий и могучий на их сайте присутствует(как неожиданно)
- Made By Frog — вдохновившись роликом Crazy Frog, ребята сделали простую и быструю систему управления контентом, не столь популярную как WordPress, но чем-то они похожи.
- Radiant — система управления Radiant CMS — это Frog, только Ruby on Rails
- CMS MODx — это система управления контентом(CMS) плюс фреймворк, но до Drupal еще далековато, хотя в освоение будет проще чем с Drupal.
- CMS SilverStripe — очередное подобие WordPress, но для ведения блога эта система управления сайтами будет туговатой.
- Alfresco — система управления сайтами использующая JSP технологию, умеете кодить на Java можете попробовать, а разработчики CMS Alfresco вас поддержат.
- Typolight — данную систему управления содержимым я бы охарактеризовал, как нечто среднее между Joomla! и Drupal, фреймворка у нее в отличие от Drupal у нее нет, но гибкость настроек выше чем у Joomla!
- DotCMS — те кто разбираются в серверных страницах Java, могут по достоинству оценить DotCMS и попробовать создать крупный интернет-портал на ее основе, во всяком случае разработчики утверждаю, что именно под это она и заточена
- Umbraco — система управления контентом с открытым исходным кодом на .NET платформе, ребята c Нюкай борются, за звания лучшего Open source решения в области CMS.
- CMS Made Simple — очень простая система управления сайта, под нее даже модули и расширения сторонние разработчики пишут, админка удобно и будет понятна даже детям.
- MaxSite CMS — качественная система управления блогами, созданная нашим соотечественником, конечно если я не ошибаюсь, вдохновился он на создание этой системы после осознания скромных возможностей WordPress.
- Joostina — один из клонов CMS Joomla!, правда изменен до неузнаваемости
На этом всё, спасибо за внимание, надеюсь, что был хоть чем-то полезен и до скорых встреч на страницах блога для начинающих вебразработчиков и вебмастеров.
Хорошая статья, искренне, мне очень понравилось,
постер вообще частенько радуете гостей своими статьями.
с текстом с многим сложно не согласится.
от души продолжайте в том же духе.