מערכת ניהול תוכן (באנגלית: Content Management System ובקצרה CMS) אני מגדיר כתוכנה המאפשרת פיתוח, תחזוקה וניהול של אתרי ווב בצורה יעילה בדגש על קלות הוספה, ניהול ומחיקת תכנים ← מה שאין כאשר יוצרים אתר בכתיבה ישירה של קוד מקור.
מאפיינים
כל או כמעט כל מערכת ניהול תוכן מאפשרת להוסיף דפי תוכן כלליים, דפי קטגוריה מסוגים שונים, טפסי יצירת קשר מסוגים שונים והצגת מבני מידע שונים.
אתר ווב שמפתחים ניתן לתחזוקה וניהול עם מערכת ניהול תוכן דרך ממשק משתמש שבדרך כלל זמין לשימוש לאחר התחברות.
בכדי לבנות אתר ווב עם מערכת ניהול תוכן מתקינים את המערכת על סביבת שרתים שתומכת בה.
לאחר התקנת המערכת על סביבת שרתים, ניתן להתחיל לבנות את האתר.
כלל המערכות ניהול תוכן מפותחות בגישה מודולרית כך שהן כוללות ליבה ורכיבי תוכנה שניתן להוסיף על הליבה ככל שיש צורך בכך (ובכך לפתור עוד בעיות בעזרת המערכת).
דוגמאות למערכות ניהול תוכן נפוצות הן וורדפרס ודרופל.
קהילה תומכת
רוב מערכות ניהול תוכן הן תוכנה עם קוד מקור פתוח או תוכנה חופשית ולכן גם אין טעם לדרוש תשלום על השימוש בהן (כל אדם יכול להוריד את קוד המקור ולשנותו כאוות נפשו ואף להציע את המוצר בחינם ולכן עדיף לשווקן בצורת כלכלה שיתופית במסגרתה כל משתמש יכול לתרום לשיפורה ולסייע למשתמשים נוספים כאוות נפשו; סיוע כזה אם ניתן מקל על אנשים חדשים וגורם להם לפתח מוצרים טובים ומרעננים עם המוצר ובכך להביא לעוד משתמשים שיתרמו עוד לפיתוח המוצר וליתרונות אפשריים נוספים (כמו פרסום החברים ויוקרת המוצר).
אוטומציה
בטרם עליית השימוש במערכות ניהול תוכן ליצירת אתרי ווב היה נדרש מן המפתח ליצור כל דף ווב הנדרש לשימוש תקין בכתיבה בלבד ולארגן את קבצי הדפים לכדי ישות אחת באופן ידני מבלי האוטומציה לפעולות אלה ואחרות שמספקת מערכת ניהול תוכן.
אם האתר כללה אוטומציה, היה צורך ליצור מנגנוני אוטומציה זו מ-0 (כלומר ליצור מה שלימים יכונה מערכת ניהול תוכן); כתיבה מ זו מ-0 עשויה להיות שימושית גם כיום ביצירת אתרי ווב קטנים מאד של עד 5 דפים נניח שצריכים להיות מהירים ביותר, בלי הכבדות היחסית שמוסיפה המערכת ניהול תוכן.
לעומת זאת, דרך מערכת ניהול תוכן ניתן להוסיף תוכן ולערכו דרך ממשק משתמש נוח ובמהירות בלחיצות כפתור בודדות. מערכות ניהול תוכן רבות כוללות אוטומציה של תהליכים כגון עדכונים אוטומטיים, דיווח על שגיאות, ניקוי מטמון ועוד.