CMS to oprogramowanie, za pomocą którego możemy samodzielnie tworzyć, edytować, usuwać oraz zarządzać treściami cyfrowymi. Głównym celem CMS-sów jest łatwość tworzenia  zarządzanych stron internetowych bez znajomości programowania oraz zarządzania serwerami. 

CMS pozwala nam zazwyczaj zarządzać: 

  • stronami treści: artykułami, wideo, galeriami, stronami statycznymi (landing page),
  • kategoriami, tagami oraz bardziej rozbudowaną taksonomią,
  • użytkownikami z ich prawami dostępu.

Część administracyjna CMS charakteryzuje się rozbudowanymi formularzami edycyjnymi, za pomocą których zarządzamy naszą stroną internetową. 

Obecnie popularne i zazwyczaj niezbędne funkcjonalności to:

  • edytor WYSIWYG dla publikowanych treści,
  • kadrowanie zdjęć,
  • proste cięcie wideo,
  • osadzanie embedów społecznościowych jak Instagram, Facebook, YouTube,
  • system przekierowań adresów,
  • edycja meta tagów title i description.

Większość CMS-ów open source pozwala rozbudować swoją funkcjonalność za pomocą pluginow (wtyczek) o tak zaawansowane elementy jak: forum, komentarze, systemy linkowania wewnętrznego, newslettery, pracę zespołową, strony AMP itd. 

Klasyczne CMS-y są monolitem i składają się z części administracyjnej, w której zarządzamy treścią, która zapisywana jest w bazie danych oraz części prezentującej  stronę www dla odbiorców, gdzie dane z bazy danych są prezentowane za pomocą dynamicznie tworzonych stron użytkownikom.

Część frontowa, czyli ta dla odbiorców,  ma zazwyczaj:

  • uporządkowany system szablonów, które można edytować niezależnie od treści w bazie,
  • spójny system adresowania dla tagów, kategorii i artykułów.
  • feedy RSS, mapy XML, restowe API wystawiające treść. 

Rozdzielenie prezentowania treści od bazy danych i zarządzanie nimi poprzez CMS nastąpiło już we wczesnych latach internetu, bo niestety utrzymywanie treści strony w samych statycznych plikach HTML nas ogranicza. Przy dużej ilości treści, globalne zmiany są bardzo czasochłonne i kosztowne i nieprzyjemne.

W dużych organizacjach popularne jest rozwiązanie headless CMS, gdzie osobno utrzymuje się część, w której tworzy i utrzymuje się treść, od części frontowej, prezentacyjnej treści dla czytelników

Popularne CMS open source to WordPress, Joomla.