Тарифы Услуги Сим-карты

Что такое CMS? Для чего она нужна? Какие бывают CMS? Система управления CMS. Недостатки самописных CMS

21.06.08 7801

CMS это не что иное как аббревиатура, которая расшифровывается как «Content Management System», что в переводе на русский обозначает "Система управления контентом (содержанием)", или как часто говорят в народе — "движок для сайта". По своей сути, CMS — это программное обеспечение. Как и любая программа, она написана на языке программирования и воспроизводится на предварительно настроенных серверах. Но об этом мы поговорим чуть позже.

А начну я свой рассказ с истоков образования World Wide Web (WWW). В теперь уже далеком 1989 году Тим Бернерс-Ли, британский учёный, работая над созданием внутренней сети для организации CERN (Европейская организация по ядерным исследованиям) предложил руководству глобальный гипертекстовый проект, ныне известный как Всемирная паутина (WWW), который предназначался для облегчения обмена информации между группами исследователей. Суть проекта состояла в объединении множества информационных ресурсов CERN в единую информационную систему. Позже было объявлено, что Всемирная паутина будет свободной для всех пользователей. Еще позже была опубликована спецификация HTML (от англ. Hypertext Markup Language - «язык разметки гипертекста»). Документы HTML являются обычными текстовыми файлами, содержащими специальные теги разметки. Теги нужны для того, чтобы передать браузеру, как надо вывести страницу. Преимущества такого способа, думаю, сразу видны: во-первых, текстовый файл можно создать везде, независимо от вашей операционной системы и текстового редактора; во-вторых, следовательно и редактировать его можно тоже везде; в-третьих, были выработаны определенные стандарты для создания веб-страничек.

Все, казалось бы, идет замечательно: основу для создания сайтов разработали, условия для распространения информации тоже создали. Осталось только заполнить Интернет информацией. Что еще нужно было для счастья?! А нет, не все так просто. Время шло, прогресс не стоял на месте, потребности людей росли: веб-мастера начали задумываться о дополнительных возможностях для своих сайтов (гостевые книги, форумы, регистрация), об автоматизации процесса управления сайтом. Но вот одна проблема — HTML был не в силах помочь в осуществлении этих идей. Здесь и раскрывается главный недостаток HTML — это его статичность. Если мы говорим о HTML, то о интерактиве, взаимодействии с посетителями сайта даже речи идти не может. Кроме этого, использование одного HTML порождало еще целую кучу проблем. Давайте же бегло рассмотрим потенциальные проблемы.

— Большинство сайтов состоят из множества HTML-страничек, связанных с помощью гиперссылок и которые в своем большинстве имеют один стиль и оформление. А теперь представим себе такую ситуацию: у вас есть 50 html-страниц, выполненных в одном стиле. Через некоторое время Вам понадобилось поменять логотип или в меню навигации добавить новый пунктик. Казалось бы, что тут сложного… А что же у нас получается на самом деле? А получается вот что: для того, чтобы внести вышеназванные коррективы нам потребуется отредактировать ВСЕ 50(!) файлов нашего сайта. Я предполагаю, что Вы уже представили себе всю "рациональность", "увлекательность" и "быстроту" этого процесса. Если же нет, и Вы хотите потренировать свою выдержку и терпение, то это занятие специально для Вас. Но мой Вам совет — лучше это же время потратить на что-то более интересное и полезное. Так, первый вид потенциальных проблем разобрали.

— Несмотря на относительную простоту языка HTML, определенный багаж знаний у человека, занимающегося разработкой и поддержкой веб-сайта, должен быть обязательно. И в чем же тут проблема спросите Вы? Отвечаю. Если вы делаете сайт для себя, и планируете дальше его поддерживать самостоятельными силами, то в принципе здесь возникнуть особых проблем у Вас не должно. НО если вы разрабатываете сайт для другого человека, который вообще без понятия, что такое гиперссылка, и что нужно вставлять между тегами, то тут как тут всплывает проблема "понимания" между веб-мастером и заказчиком. Ведь через некоторое время после сдачи готового сайта, заказчику может потребоваться, чтобы вон та вот полоска была в самом низу страницы, слово "Привет" отодвинуть немного левее, а свою фамилию выделить жирным шрифтом. И к кому он обратится за помощью? Конечно же, к Вам. Я уже не упоминаю про те случаи, когда из такого сайта пытаются сделать информационный проект, с активной публикацией новых материалов. В этой ситуации веб-мастеру лучше сразу забыть о других проектах. И с этим видом проблем, думаю, все понятно. Идем дальше.

— И наконец-то мы дошли до третьего, самого актуального в наше время, вида потенциальных проблем. Речь, конечно же, пойдет о функциональных ограничениях, которые налаживает язык HTML на разработчиков сайтов. А ограничения эти, должен я Вам сказать, просто гигантские. Если 10 лет назад любой созданный сайт был диковинкой и пределом мечтаний, то сейчас статические сайты считаются второсортными. Хотя тут не все так однозначно и зависит от того с какой стороны рассматривать этот вопрос. Допустим, если сайт предполагает наличие нескольких страничек, на которых будет размещен статичный текст, и к тому же еще очень редко обновляемый, то HTML здесь "то, что доктор прописал". Но если Вы планируете крупный портал с ежедневными обновлениями, то здесь использование одного HTML нерационально, нелогично и неправильно. Поэтому здесь действует правило: к каждому проекту нужен индивидуальный подход. Язык HTML не относится к языкам программирования, поэтому реализовать такие вещи как голосование, гостевую книгу, регистрацию и другое с помощью него просто невозможно. Повторюсь, основной задачей HTML является разметка страницы браузера. Поэтому если вы планируете модные функциональные навороты и активное взаимодействие с посетителями, то Вам прямая дорога либо самостоятельно начать изучать программирование на PHP, Perl или ASP, либо обратить свое внимание на CMS.

Термин CMS в последнее время достаточно часто встречается на просторах интернета. Что же это? Одни говорят, что это «движок» и «сердце» сайта, другие - инструмент для эффективного решения рутинных задач по размещению информации и редактированию или созданию разделов. В данном случае правы обе стороны.

CMS (от английского Content Management System ) - система управления содержимым (контентом) - компьютерная программа или информационная система, которая используется для организации и обеспечения процесса по совместному созданию, управлению и редактированию содержимого сайта.

Основной задачей такой системы является сбор и объединение в единое целое, на основе ролей и задач, различных источников информации. Эти источники могут быть доступны как внутри самой организации, так и вне её пределов. К тому же данная система обеспечивает возможность взаимодействия различных сотрудников, проектов и рабочих групп, с теми базами знаний и данных, которые были ранее созданы, в таком виде и таким способом, чтобы сделать процесс поиска и повторного использования максимально комфортным и привычным.

В такой системе управления контентом определяется всё многообразие существующих данных: стандартные документы, музыка и звуки, видео, каталоги всевозможной информации и многое-многое другое. И именно для управления, хранения, обработки, просмотра и публикации таких данных различными группами пользователей и служат CMS. Отсюда кстати возникает и новый род профессиональной деятельности - контент менеджер, или проще говоря - редактор сайта

Для чего нужна CMS?

Если смотреть с точки зрения обычного заказчика, то разработка сайта на основе какой-либо CMS должна приносить следующие преимущества:

  • в работе используется наиболее эффективный инструмент для решения конкретной задачи (в зависимости от вида сайта и требований к его функционалу подбирают оптимальную CMS);
  • использование CMS позволяет владельцу сайта самостоятельно создавать и удалять разделы сайта, редактировать различную информацию без привлечения стороннего специалиста - это одно из преимуществ над статическими сайтами ;
  • работа сайта постоянно тестируется множеством пользователем, а найденные ошибки и уязвимости достаточно оперативно устраняются, при этом сайт работает на самых передовых и проверенных технических решениях;
  • временные затраты на разработку сайта существенно снижаются, так как разработчику не надо фиксировать своё внимание на чисто технических задачах: «как сделать ленту с новостями» или «как научить CMS искать товары в каталоге», а можно сосредоточиться на информационной и визуальной составляющих будущего сайта;

Какие бывают CMS?

Совершенно разные! Некоторые системы ориентированы только на решение конкретных задач (ведение блогов, интернет магазины, форумы), другие являются универсальными и предоставляют разработчиком удобную среду проектирования и программирования для разработки чего угодно. Часть CMS состоять из множества функциональных блоков и модулей, другие монолитны, неделимы, да ещё и зашифрованы. Одни системы поставляются бесплатно и с возможностью внесения своих доработок, а некоторые предоставляются за деньги и не допускают возможность редактирования ядра «движка».

До сих пор нет единой и чёткой классификации, принятой рынком, существующих CMS, однако это не мешает выделить лидеров в данной области. Тут приведём лишь краткий их перечень, без выделения сильных и слабых сторон:

  • Joomla - (самая противоречивая система) - яркая, современная, постоянно обновляющаяся, достаточно простая в разработке и использовании, предоставляется совершенно бесплатно;
  • Drupal - (для любителей разработки сайтов с нуля) - это не просто полноценная функциональная среда для разработки и создания всевозможных сайтов, которая предоставляется так же бесплатно и имеет гибкие возможности, но и в каком-то смысле - стиль программирования и даже жизни;
  • MODx - достаточно современная разработка, которая в последнее время уверенно набирает обороты и увеличивает свою аудиторию поклонников. К тому же она является чрезвычайно гибкой и эффективной, при этом поставляется безвозмездно, но и порог вхождения в число разработчиков на этой CMS несколько выше, чем у других систем;
  • 1C Битрикс - монстроподобная разработка от небезызвестной 1С, в которой можно найти различные редакции от простой, до портальной, при этом стоимость её значительно отличается от версии к версии;
  • и многие-многие другие. Для особо любознательных, вот весь список платных и бесплатных CMS, которые мне удалось собрать: WordPress, DLE, eZ publish, Koobi, Simple Machines Forum (SMF), MediaWiki, SiteDNK, CM5, NetCat, TYPO3, Plone, CMS Made, Simple, Movable Type, InstantCMS, MaxSite CMS, UMI.CMS, Magento, Twilight CMS, PHP-Fusion, Melbis, Miva Merchant, Textpattern, OSCommerce, phpwcms, N2 CMS, Explay CMS, ExpressionEngine, Cmsimple, OpenCMS, Slaed, Klarnet CMS, SEQUNDA, Site Sapiens, e107, Danneo, Cetera CMS, Hitmaster, DSite, SiteEdit, TrinetCMS, HostCMS, Amiro CMS, iNTERNET.cms, Kentico CMS, LiveStreet, vBulletin, phpBB, Invision Power Board, S.Builder, ABO.CMS, PHP-Nuke, RUNCMS, Adlabs.CMS, Introweb-CMS.

Важное замечание: бесплатность CMS отнюдь не означает низкое качество кода или наличие ограничений в использовании. Наоборот, чаще всего, отрытые и бесплатные CMS во многом выигрывают у своих коммерческих собратьев именно из-за своей общедоступности. Над этими системами трудятся не только коллективы профессиональных разработчиков, но и сотни и даже тысячи добровольцев, которые стремятся сделать любимую CMS ещё лучше и безопасней.

Сложно сделать правильный выбор среди такого разнообразия, поэтому необходимо чётко осознавать назначение и функционал будущего сайта. К примеру, если заказчику нужен всего лишь небольшой личный блог, то нет смысла ему приобретать «1С-Битрикс - корпоративное решение» за 100 с лишним тысяч рублей. Поэтому задача разработчика сайта - не только в том, чтобы сделать сайт точно в срок и с учётом пожеланий заказчика, но и выбрать правильную и достаточную CMS для этих целей.

Недостатки самописных CMS

Многие web-студии и разработчики предлагают системы собственной разработки именно как лучший из возможных вариантов. Для небольших сайтов типа: сайт-визитка или каталог, или сайтов, которые в будущем не планируется модернизировать, такой вариант может быть ещё как-то приемлемым. А вот в случае разработки чего-то более-менее серьёзного или масштабного, а так же того, что в скором времени потребует доделок, или изменений, такая CMS будет сильно проигрывать любой из популярных систем. Заказчик будет просто привязан непосредственно к первоначальному разработчику, ведь для того чтобы изучить новую систему - требуется определённое время и силы, а найти того, кто захочет разобраться в чужой разработке не так уж и просто.

Ещё одним минусом самописных CMS является её уязвимость, особенно это касается интернет-магазинов, в которых вопрос безопасности стоит очень высоко. Ведь на подобных сайтах могут храниться номера кредитных карточек, различные платёжные документы и прочая конфиденциальная информация - это очень лакомый кусочек для различного рода злоумышленников и просто любителей что-нибудь испортить. А без массового тестирования уязвимостей и своевременного обновления «сердца» системы - безопасное функционирование сайта становится под угрозой.

И ещё один момент: очень часто разработчики сайтов, уверяют будущих владельцев сайтов, что с помощью их всемогущей, удобной и простой CMS - заказчик самостоятельно сможет создавать или редактировать структуру сайта, добавлять новый функционал одним кликом и т.п. На самом деле - это полуправда. Да, выполнять элементарные вещи по созданию новых материалов, публикации или редактированию статей с новостями или загрузке картинок в галерею - почти не требует никаких особых навыков, но для использования расширенных возможностей CMS несомненно нужно разбираться в базовых web-технологиях, знать основы программирования и самое главное- иметь желание и возможность разбираться в чём-то новом.

Любая CSM - это не волшебство и не панацея, а всего лишь инструмент, который в умелых руках действительно способен творить чудеса.

CMS (англ. аббр. от Content Management System) — программное обеспечение, предназначенное для создания, организации структуры, редактирования веб-сайта и управления им. Также используются термины — CMS-движок, движок.

Принцип работы

CMS-движки дают возможность добавлять и редактировать контент сайта, не изменяя внутренний механизм организации и вывода страниц. Условно CMS разделена на два хранилища информации: для баз данных с контентом страниц и для элементов визуализации, позволяющих показывать содержимое сайта посетителям (графические элементы, шаблоны и т.д.).

Для удобной работы с информационным наполнением сайта большинство движков имеют инструмент визуального редактора (WYSIWYG) — программу, которая создает HTML-код из облегчающей пользовательское форматирование текста разметки. Поэтому в процессе работы с текстом сразу виден конечный результат.

Цели использования

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

Классификация CMS

Движки классифицируются по нескольким критериям.

По виду CMS различают:

  • открытые CMS. Имеют открытый исходный код, доступный пользователям для просмотра, редактирования, изучения и создания нового программного обеспечения на его основе (например, Wordpress, Drupal, Joomla).
  • проприетарные (или закрытые) движки. Эти программы, как правило, платные — частная собственность их правообладателей и создателей. Исходный код таких движков закрыт для изучения, просмотра, модификации и редактирования (например, Microsoft SharePoint Server, UlterSuite CMS, Site Sapiens ECMP).

По способу работы шаблона различают движки:

  • с автономной обработкой данных. Предназначены для создания статических сайтов.
  • интерактивные CMS. Предназначены для создания динамических сайтов.
  • гибриды. Сочетают функции автономных и интерактивных движков.

"а и SharePoint"а в контексте этого термина. Началось все с того, что Берт Боерлэнд заявил в своём блоге , что в ближайшие 3 года (запись датирована 22 декабря 2006 г.) CMS будет означать «Community Management System». Контент перестает быть ключевым элементом успешного сайта (как в интернете, так и, с некоторым запаздыванием, в интранете).

Мне это кажется весьма логичным. Теперь уже мало «набить» сайт полезной, качественной информацией. Необходимо создать вокруг этой информации сообщество, повысив таким образом вовлеченность посетителей сайта в процесс формирования контента. Идеальная система, построенная по принципу «контент + сообщество», будет обладать положительной обратной связью. Чем больше людей вовлекаются в сообщество, тем больше контента они генерируют, тем больше посетителей привлекает сайт, тем больше людей вовлекается в сообщество… круг замкнулся. Я намеренно оставляю за рамками этой записи вопросы качества информационного наполнения сайта, т.к. они требуют отдельного обсуждения.

Тему нового взгляда на расшифровку аббревиатуры CMS развил в своём блоге Друи Буйтэ - лидер проекта Drupal. С его точки зрения , CMS – это «Collaboration Management System», т.е. система управления совместной работой. В качестве примера он приводит SharePoint и ближайший его аналог с открытым исходным кодом – систему Alfresco (последней, правда, не хватает именно «портальных» функций). Дри так же сетует, что, в отличии от этих двух систем, Drupal не поддерживает интеграцию с офисным ПО, таким, как MS Office и OpenOffice. Дискуссия продолжается в комментариях к записи, но постепенно скатывается к банальному holy war между любителями SharePoint"а и Drupal"а.

Так чем же, на самом деле, отличается система управления контентом от системы управления сообществом или системы управления совместной работой (последняя, в какой-то мере, является частным случаем второй, наиболее характерным в бизнес-среде)? На мой взгляд, отличие состоит в направлении информационных потоков. Традиционные CMS"ки обеспечивают, по сути, однонаправленную передачу информации – от редактора (он может быть как автором, так и «собирателем» информации) к читателю (посетителю сайта). Редактор, среди прочего, должен обладать навыками ввода и изменения информации в используемой CMS. По мере развития веб-приложений, использующих DHTML, процесс ввода в систему текста даже со сложной разметкой значительно упрощается, но по возможностям все еще не дотягивает до полноценных десктопных офисных пакетов. Что уж говорить о табличных данных и графических схемах, весьма часто используемых в бизнес-среде. Ручная же верстка страниц зачастую представляет собой слишком сложную для большинства пользователей задачу.

Все это не позволяет наладить полноценный обратный поток информации – от читателя к редактору сайта. Как только мы дадим возможность читателю (в этом случае он уже становится участником ) вносить свои изменения, дополнять и расширять контент сайта используя привычные для него средства (а для большинства пользователей это, как ни крути, офисный пакет), мы получим систему совместной работы, пригодную для потребностей бизнеса. Ларчик, как вы видите, открывается просто.

Итак, подводя итоги:

  1. Система управления контентом должна обеспечивать поток информации от редактора к читателю . Система совместной работы должна обеспечивать двусторонний поток информации – от сайта к участнику, и от участника – к сайту. При этом технические средства, с помощью которых пользователь вводит информацию в систему должны, с одной стороны, обладать широкими функциональными возможностями, а с другой – быть простыми и/или привычными для пользователя.
  2. Для того, чтобы сделать «убийцу SharePoint"а», надо в первую очередь реализовать простую, безглючную, прозрачную интеграцию системы с тем или иным (а лучше и тем и другим) офисным пакетом.

Как ответить на вопрос о том, что такое CMS? С появлением сети Интернет многие стали интересоваться новыми возможностями. Теперь каждый желающий может создать сайт или хотя бы страничку с информацией о себе. Однако для этого нужно знать хотя бы основы сайтостроительства: HTML, размещение в сети. А это доступно далеко не всем.

Со временем сайты стали все сложнее, включали в себя много возможностей для общения, ведения статистики и другого. Понадобились специальные люди, чтобы следить за интернет-ресурсами. Такой процесс занимал достаточно много времени и сил. Чтобы автоматизировать эту деятельность, крупные корпорации стали создавать специальное программное обеспечение. Так появились системы для работы с контентом. Так что такое CMS? от английского Software" - программное обеспечение для управления содержимым.

Развитие CMS

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

С течением времени такие системы все больше развивались и уже позволяли не только создать простой информационный сайт, но и серьезные проекты. В настоящее время интернет-ресурсы имеют широкие возможности: добавление блогов, форумов, новостей, управление подпиской и многое другое.

Что такое CMS? С появлением этого несомненно полезного механизма любой пользователь, даже не знающий HTML и PHP, может без труда создавать собственные интернет-сраницы и сайты, а также администрировать их.

Современные CMS-системы

Сейчас использованием CMS уже никого не удивить. Стоимость такой системы сравнительно невелика, а возможности позволят управлять сайтом даже без специальных знаний. Что такое CMS в современном понимании?

В первую очередь это разделение возможностей по уровням знаний. Такая система разделяется на пользовательскую и административную часть. Первая представляет собой внешний вид самого сайта, но с дополнительными возможностями: добавление страниц и разделов или их редактирование. В этой части может работать любой пользователь, например менеджер, отвечающий за информативную составляющую сайта. Вторая, более углубленная, скорее, для администраторов. Здесь идет проверка производительности, настройка почтовой системы, всевозможные добавления к уже существующему функционалу.

Примеры CMS-систем

В настоящее время существует уже очень много систем управления содержимым - от коммерческих 1C-Bitrix и NetCat до бесплатных WordPress и Joomla. Все они "умеют" контролировать содержимое интернет-ресурсов и имеют соответсвующую техническую поддержку.

Подведем итоги

Что такое CMS-системы? Это средство для управления сайтом без помощи специалистов. Использовать такую систему может каждый мало-мальски Все это делает работу в Интернете простой, доступной и удобной.