Что такое CMS?
Немного CMS, что это такое, и зачем она нужна.
Аббревиатура CMS расшифровывается как «Content Management Software» («программное обеспечение для управления содержимым»). В нашей стране принято последнюю букву «S» расшифровывать как «System», а по-русски это обычно звучит как «Система управления контентом». Иногда употребляется более простое название - "движок сайта".
CMS - это программа сайта, которая устанавливается на хостинг и выполняет две основные функции.
Первая функция CMS - показывать страницы сайта, формируя их содержимое динамически из заранее определенных шаблонов с дизайном и контента, то есть текстов, картинок, таблиц и других материалов, которые хранятся в базе данных.
Как работает CMS?
CMS создает страницу пользователю в момент его запроса. При этом, в зависимости от ситуации, пользователю может быть показана какая-то уникальная информация, которая больше никому и никогда не будет видна. Например, содержимое его корзины в интернет-магазине. Эту работу и делает CMS, или "движок сайта". При этом, CMS не просто генерирует страницы пользователям. Она пытается сделать это как можно быстрее, чтобы обработать максимальное количество запросов в единицу времени, защищает данные от недобросовестных пользователей, не дает засорять базу данных спамерам и делает в фоновом режиме массу дополнительной работы, которая не видна посетителям сайта и даже его владельцу, но жизненно необходима для нормальной работы современного сайта.
Конечно, создать сайт можно и без CMS. Простейшие сайты из 1-3 страниц делаются за несколько часов, правда, когда страниц будет не 1, а 100 возникнут определенные сложности. Если на каждой странице находится, например, телефон компании, то чтобы изменить его потребуется поменять его в 100 местах, и все это вручную. Еще хуже, если на страницах нужно будет поменять какую-то ссылку - поддержание такой большой структуры без вспомогательных программных средств будет практически невозможно.
Дальше - больше. Для того, чтобы добавить на сайт, например, форму обратной связи, придется прибегнуть к программированию и сделать специальный скрипт, принимающий данные от клиентов и сохраняющий их в базе. Это делает самостоятельное создание сайта для рядового пользователя практически невыполнимой задачей. Современные CMS позволяют обойтись без необходимости писать самому какой-то программный код и собирать сайт как конструктор.
Вторая функция CMS - помочь владельцу сайта без каких-то специальных навыков управлять сайтом, то есть публиковать новые страницы, новости, выкладывать видео, делать ссылки на внешние ресурсы и так далее. Если войти в админзону, вы увидите примерно вот такой интерфейс:

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

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