Samla runt runda vänner, och jag berättar för dig en historia som är ren tillverkning från min sida, och förmodligen hur det hände: En gång i tiden, omkring 1995 (så långt jag kan räkna med att söka på nätet) någon stackars kille som arbetade som "webmaster" för ett stort företag var att lägga nästan alla skrivna delar av marknadsföringsinnehåll de hade online. Han gjorde det här eftersom någon i förvaltningen tyckte att det inte kunde skada, och han hade inte så mycket annat att göra.

När han skrev oändliga linjer med HTML-kod för hand tänkte han: "Det måste bli ett enklare sätt att göra det här."

Han började föreställa sig ett system som kanske skulle kunna hantera innehåll mer effektivt och ta lite av smärtan ur sitt jobb. Sedan han visste några grundläggande skript började han lägga grunden för vad som skulle bli det första Content Management System.

Det är så att många mänskliga problem löses: människor blir uttråkade och sjuka av sitt arbete. Som svar på denna stimulans, eller brist på det, har vi nu fler CMS än vad jag personligen bryr mig om att räkna. De är överallt, och de kan göra nästan vad som helst. Nu är problemet med denna typ av oändliga val att det, ja, folk vet inte vart man ska börja. Hur väljer du ett CMS ändå?

Det är vad denna artikel handlar om. Jag har försökt att göra det så enkelt som möjligt att förstå vad ett CMS gör, och vilken typ av CMS du behöver för olika typer av webbplatser.

Vad är ett CMS, exakt?

Tänk på en webbplats. Någon webbplats. Vad är det med? Stuff som ord, bilder, videoklipp, kartor, kontaktformulär, frågesporter, omröstningar och mycket mer. Alla dessa saker (som vi kallar "innehåll") måste organiseras.

Det måste vara tillgängligt och lätt att hitta för de personer som faktiskt kör webbplatsen och för användarna som bläddrar. Det måste också vara enkelt att lägga till mer innehåll, ta bort de saker du inte vill ha längre, flytta runt eller byta namn på det.

De flesta CMS: er tillåter bara ett fåtal få att hantera innehåll. Community CMS som forum och sociala medier gör det möjligt för varje användare att hantera sitt eget innehåll och sedan göra det tillgängligt för alla andra.

Ja, du kan göra allt detta manuellt. För många mindre webbplatser är det precis vad folk gör: de röra sig om med filer och mappar och redigerar sina sidor i en vanlig textredigerare (som Anteckningar, men brukar använda något mer komplext). Om du bara har fem sidor, och du vet vad du gör - eller kan betala någon som gör - så är du klar.

Du behöver förmodligen inte ett CMS.

Men om du inte har råd att anställa en professionell, har inte tid att göra det själv och / eller behöver en webbplats som är större och mer komplex, är ett CMS värt det. Det är helt enkelt inte praktiskt att bygga en webbplats som är stor utan något för att automatisera åtminstone en del av processen.

Om du behöver ha mer än en person som bidrar till en webbplats behöver du absolut ett CMS. Att ge människor tillgång till råa filer skulle vara ett recept på katastrofala användarfel. Bättre att ge dem ett system som tillåter dem att lägga till innehåll utan att oavsiktligt förstöra någonting viktigt.

Vem är det här för?

Den här artikeln är för webbdesignsklienter, företagsägare och andra personer vars ögon glasyr över när du börjar kasta akronymer runt. Designers och utvecklare kan se dessa saker upp för sig själva och vet vanligtvis vad buzzwords betyder.

Men om du någonsin har gått CMS handla och tänkt, "Tja, att alla skulle låta väldigt trevligt om jag visste hur mycket de pratade om ...", då är den här artikeln för dig.

Jag föreslår att du läser, minskar din lista med alternativ och ger den till din designer och / eller utvecklare för att ta reda på vilket är det bästa alternativet för dig. Om du är i ett tillräckligt stort företag att du har ett helt design- och utvecklingslag, borde du noga låta dem begränsa din lista över alternativ.

Typer av innehållshanteringssystem

Nu är det med att bygga webbplatser att nästan alla har olika behov. Visst kan du försöka bygga ett CMS som kan möta alla dessa behov. Massor av människor har försökt.

... välj ett CMS som möter dina specifika behov så nära som möjligt

Dessa plattformar tenderar att vara massiva, långsamma, riddled med säkerhetsproblem, komplexa att använda från både främre och bakre ändar och en allmän smärta bakom sig. Också konstigt populär. Och faktiskt nej, jag pratar inte om WordPress.

Så den generellt smartare lösningen är att välja ett CMS som möter dina specifika behov så nära som möjligt. Vi kommer att prata om det senare, senare. Först bör vi prata om de slags innehållshanteringssystem som du hittar där ute.

Jag har kommit med en lista över de vanligaste kategorierna av CMS. Inte bara finns det mer CMS än jag faktiskt kan lista, det finns fler typer än jag kan lista. Detta beror på att det finns anpassade CMSs där ute som görs för alla tänkbara behov som någon kan ha.

För din tid, och min, har jag fastnat med de vanligaste kategorierna.

Managed vs Hosted

Innan vi går vidare till kategorier som "bloggarprogram" eller "e-handel", måste du välja var du vill att ditt CMS ska vara värd. Vissa CMS-enheter tillhandahålls som en tjänst, och allt tekniskt hanteras av ett tredjepartsföretag.

Dessa kallas "managed CMSs" eller "managed platforms", och ofta "SAAS-plattformar" (programvara som en tjänst). Exempel inkluderar Shopify , wordpress.com , och webbplatsbyggare som Squarespace .

01-Square

De har flera fördelar, inklusive aktivt stöd, konstant utveckling, och du behöver aldrig oroa sig för att uppdatera programvaran själv. Säkerheten hanteras också för dig. Det finns mycket att gilla.

Deras nackdelar är brist på kontroll över vissa saker. Du kanske inte kan göra din webbplats att se eller fungera exakt hur du vill ha det. Du äger inte nödvändigtvis egna uppgifter. Om företaget utvecklar plattformen beslutar att dike en funktion du gillar, är du själv. Om de måste stänga av operationer av någon anledning, är du själv.

Som sagt har många av dessa tjänster tusentals, ibland miljoner glada kunder. Du kan vara en av dem.

På andra sidan myntet har vi "värdplattformar". Denna typ av programvara kan gå på din egen server eller en tredjepartsserver som du hyr från någon annan. Exempel är den värdversionen av Wordpress , Magento , och Concrete5 .

03-wordpress

Den främsta fördelen med dessa alternativ är kontroll. Du kan få allt att fungera exakt vad du vill ha. Du kan ofta även utöka funktionaliteten själv genom att bygga egna teman och plugins. Om det är en öppen källkod, eller om du har köpt rätt kommersiell licens, kan du till och med ändra programmets egen funktionalitet, men det är vanligtvis inte rådgivande.

Uppdateringar kan tendera att ångra allt ditt hårda arbete.

Den andra fördelen är priset. Förvaltad plattform kostar vanligtvis en månadsavgift. Hosted-plattformar har vanligtvis en engångskostnad eller ingen kostnad alls.

Nackdelen är att du själv är från början. Du eller någon som arbetar för dig måste installera programvaran, hålla den uppdaterad och ta hand om alla tekniska detaljer, inklusive säkerhet. Du kan hitta dig själv att betala för någon form av kommersiellt stöd i vilket fall som helst.

Men för de personer och organisationer som vill behålla full kontroll över sin erfarenhet av mjukvaran, är deras webbplats funktionalitet och estetik, deras data och den bakomliggande tekniken inget bättre än ett värddatabas.

Databaser jämfört med platta filer

Det är värt att notera att värddatasystem också delas in i två typer. I det här fallet delas de av hur de lagrar webbplatsens inställningar, innehåll och annan information. Det här avsnittet kommer att bli mer teknisk än affärsorienterat, men förståelse av denna information hjälper dig att fatta mer informerade beslut om CMS du väljer.

De vanligaste CMS-systemen, för närvarande, kör alla på databaser, som hanteras av databasservrar. I detta sammanhang är databasservern bara ett separat program som är utformat för att effektivt organisera information, inte nödvändigtvis en separat dator. Men ... det kan vara på en separat dator, för du vet ingenting är någonsin enkelt.

I grund och botten görs databaseservrar för att organisera en massa information inuti en enda fil och hämta specifikt begärda uppgifter omedelbart. De är snabba, effektiva och logiska.

En gång i tiden var detta det föredragna sättet att organisera all information på en webbplats eftersom det är lite lättare på den faktiska hårdvaran. Men med framsteg som caching och innehållsleveransnätverk ( CDN ), det här är inte längre fallet.

Alternativet att använda en databas är att hålla all din information i "plattfiler". Skillnaden här är att hela webbplatsens innehållssidor, blogginlägg, etc.-hålls i en hierarkiskt organiserad uppsättning textfiler. Innehållet lagras och hämtas direkt av CMS, utan en mellanliggande databaseserver.

02-grav

Grav är en av de mest populära nya plattforms-CMS-erna.

Det här tillvägagångssättet blir alltmer populärt med innehållshanteringssystem för små och medelstora webbplatser och statiska generatorer (mer om dem senare). Dessa system är ibland lättare att installera, men den största fördelen är att de kan användas på flera typer av servrar och webbhotell.

Användning av platta filer istället för en databasserver kan ibland minska kostnaden för hosting. Detta gäller särskilt om du använder plattform-som-en-service (PLAAS) -hotell som Amazon Web Services, Microsoft Azure eller Heroku.

Framework CMS

En ram CMS är utformad för att hantera nästan alla uppgifter du bryr dig att kasta på den, så länge du har några programmeringsförmåga eller en utvecklare på laget. Vad det gör är att skapa en grundläggande, väl ... ram ... för att du ska kunna bygga ditt eget CMS, vanligtvis med hjälp av moduler eller plugins som utvecklats av utvecklare och samhället.

Det mest kända exemplet är Drupal .

Det här är den typ av CMS du väljer om du har specifika anpassade behov, men vill inte bygga allt (speciellt admin-användargränssnittet) från början. Det är inte den typ av CMS du väljer om du vill komma igång snabbt. Framework CMS väljs ofta av stora organisationer som behöver så mycket flexibilitet som de kan få, och som har stora budgetar eller inhemska design- och utvecklingsgrupper.

04-drupal

Bloggar CMS

En av de mer populära typerna av CMS, bloggar är överallt . Nästan varje utvecklare som vill försöka sin hand på att bygga ett CMS bygger en bloggmotor vid någon tidpunkt. De flesta av dessa tar inte av, men en gång i taget får du en stor hit.

Det finns bloggmotorer för varje programmeringsspråk och värdplattform. Det finns blogmotorer utformade för alla möjliga former av bloggar du kan tänka dig. Det finns kanske tusentals värddatabasmotorer, och enkelt hundratals hanterade bloggplattformar.

Någon blogg CMS, som ovan nämnda WordPress och den nyare Spöke , har både värd och hanterade versioner.

De tre stora typerna av bloggar är textbaserade bloggar, fotobloggar och videobloggar. Jag kommer inte att gå in på för mycket detaljer om detta eftersom namnen är ganska självförklarande. De flesta bloggar är textbaserade, vilket självklart också kan innehålla inbäddade bilder och video. Skillnaden handlar mestadels om bloggens fokus. Med andra ord, om bilder är huvuddelen av ditt innehåll och den primära attraktionen för dina användare, är det en fotoblogg.

05-spöke

Ett exempel på en Ghost-blogg.

Gemenskapens CMS

Vissa CMSs handlar inte bara om att publicera ditt eget innehåll för publiken att se. Det finns många som är utformade för att uppmuntra mer användarinteraktion, med ett starkt fokus på att bygga en grupp stamgäster. Dessa kommer i tre huvudvarianter:

forum

Om du tillbringade någon tid på att bara surfa på Internet i pre-Facebook-eraen är chansen att du har stött på någon av dessa. För alla som gjorde riktiga saker på tiden, eller är bara mycket unga, kom forum före Facebook-sidor, och är oändligt bättre, om du kan få folk att hålla fast.

I grund och botten är det ett CMS som tillåter någon medlem att starta en diskussion med andra människor. Dessa diskussioner sorteras vanligen efter ämne eller kategorier som ställts in av webbplatsens administratör och / eller moderatorer. Det är långsammare än en Slack-kanal, men hela konversationen finns där för alla att se, och det ger människor mer tid att formulera svar.

På grund av deras tidigare popularitet finns det många, många programalternativ för personer som vill ha ett forum (heck, det finns forumpluggar för WordPress), men bara några få. Invision Power Board har varit den ledande kommersiella lösningen i flera år och phpBB är det största open source-alternativet.

06-phpbb

Nyheter styrelser

Det här är lite som forum, bara i stället för att människor börjar diskussioner med egna ord, skickar de nyhetsberättelser. Användare kan sedan lämna kommentarer på nyhetsbyrån själv.

Digg var en gång i tiden den stora nyhetsbyrån i staden, speciellt för den tekniska publiken. Med tiden gick den manteln vidare till Reddit. Om du aldrig har varit på en nyhetsbyrå, bör du kolla Reddit för att se hur det fungerar. Eller om du vill ha något mer designfokuserat, kolla in vår egen Web Designer Nyheter .

De flesta av dessa webbplatser verkar ha anpassade CMS. Det mest kända konsumentalternativet är Teleskop , som är fri och öppen källkod.

07-WDN

Sociala nätverk

Det är rätt, du kan göra din egen Facebook-klon med någon av en mängd olika hanterade tjänster eller värd CMS. Eller du kan bygga en datingsida som OkCupid. Tänk på att det är svårt att hantera ett socialt nätverk av något slag, och du kommer sannolikt aldrig att bli lika stor som de stora namnen.

De flesta som bygger sina egna sociala nätverk idag har ett mycket specifikt tema eller en central orsak i åtanke, precis som de som bygger sina egna forum och nyhetsbyråer. Så, alla dessa är bra alternativ om du har en nisch. Eller, du vet, börja bara med en Facebook-sida.

Liksom nyheterna är de flesta sociala nätverk anpassade. Det bästa alternativet för fri / öppen källkod som jag hittat hittills är Dolphin Pro . Om du inte har något emot att betala någon för att ta hand om de tekniska sakerna, kan du bygga ett socialt nätverk på Ning: s hanterade plattform .

08-dolphinpro

E-handel CMS

E-handelssystem är vanligtvis massiva och komplexa av design. Jag menar säkert, tanken är enkel: de låter dig sälja saker online. Verkligheten är naturligtvis mycket mer komplicerad, som man kan förvänta sig när man driver ett företag.

De stora namnkampanjerna för e-handel visar inte bara dina produkter på framsidan av en webbplats och lägger en "buy" -knapp på skärmen. De hjälper dig att hantera inventering, frakt, valutaomvandling, betalningsbehandling, skatter, kundtjänst och allt annat du kan tänka dig. De är byggda för att hantera affärer, som lätt kan vara så komplicerade online som det kan vara personligt.

De tre stora namnen i e-handelssystem är Magento (Gemenskapsutgåvan är gratis), ZenCart (helt öppen källkod) och Shopify (en betald, hanterad plattform).

09-magento

Denna Magento-demo är artighet av IDW .

Allmänt CMS

Allmänna CMS har lite gemensamt med CMS genom att de är gjorda för att hantera olika behov (vanligtvis företagsbehov) och är ganska anpassningsbara. De brukar också utökas eller ändras med plugins och moduler.

Skillnaden är i användarvänligheten. General CMS är gjord att hanteras av icke-programmörer. Visst, kodande expertis är till hjälp, men även en grundläggande kunskap om HTML och CSS kommer att ta dig en lång väg. Även det är inte helt nödvändigt, eftersom de vanligtvis är utformade för att vara ganska nybörjevänligt.

Plugins innehåller ofta enkla saker som grundläggande bloggmoduler, bildgallerier, add-on-kommentarsystem och den typen av saker.

Det finns inte många stora namn i den här kategorin, eftersom dessa CMS på ett sätt är de andliga barnen i den gamla, massiva Portal CMS (se nedan). Denna kategori började som en slags rörelse för att göra innehållshanteringen enklare.

Inledningsvis blev det mycket enkelt, som i fallet med Wolf CMS (Ja, det är fortfarande runt och halvaktiv!) Idag, Pagekit (fri och öppen källkod) ser ut som epitomen hos en allmän CMS.

10-pagekit

Portal CMS

Portal CMS hämtar från en tid när varje webbplats ville bli nästa Yahoo (!) Eller AOL. Detta var tillbaka på dagen då alla webmaster med ambition istället för att försöka få alla att anmäla sig till nyhetsbrevet ville att deras webbplats skulle vara din hemsida.

Dessa webbplatser var vanligtvis utformade för att visa massor av information på en gång, allt du kanske vill ha från hela webben. Således kallades de "portaler". De flesta var skräddarsydda, men självklart ville folk ha sätt att bygga sina egna.

Ett av de tidiga alternativen för detta var Mambo, en öppen källkod som dog av några år tillbaka. Nu svär många företag av efterträdaren, en gaffel med namnet Mambo Joomla .

11-joomla

Numera har portalen CMS blivit avvägd lite, liksom de flesta webbplatser i allmänhet. De är vana vid att driva webbplatser för stora företag som behöver sina CMS att göra bokstavligen allt. Joomla har till exempel moduler för nästan allt du kan tänka dig.

Naturligtvis resulterar detta i oerhört komplexitet, och portal CMS har ofta ganska inlärningskurvan för både administratörer, designers och utvecklare. Jag har personligen en aversion mot den typen av komplexitet, men det finns fall där det är nödvändigt och till och med ovärderligt.

Om du ska använda en portal CMS, är en utvecklare inte absolut nödvändig, men du borde anställa en i alla fall. Bättre än, få en som specialiserar sig i CMS du har valt.

Webbplatsbyggare

Webbplatsbyggare har mycket gemensamt med allmänna CMS, eftersom de är utformade för att förenkla hela processen att hantera innehåll för webbplatsens administratör mer än någon annan. Skillnaden är att de också är utformade för att göra det enkelt för dig att designa dina egna webbplatser.

Tänk på dessa som modernare, och oftast mycket mindre frustrerande, versioner av Dreamweaver och Frontpage. Om det skickade en rysning ner i ryggraden, oroa dig inte. Webbplatsbyggare har blivit mycket bättre.

De följer i stor utsträckning bästa praxis och webbstandarder. Även om de vanligtvis inte är anpassningsbara som en webbplats byggd från början, erbjuder de vanligtvis mer än tillräckligt med alternativ för den genomsnittliga webbplatsägaren.

Det beror givetvis på byggaren. De sträcker sig från de döds-enkla, mallberoende Wix , till den mycket mer komplexa och anpassningsbara Squarespace , till verktyg som WebFlow , som handlar om att designa din webbplats från början, om än med verktyg för pek och klick.

12-WebFlow

Statiska platsgeneratorer

Statiska anläggningsgeneratorer är inte för svaga i hjärtat, och kräver nästan alltid någon form av programmeringskunskap att genomföra. De brukar inte komma med ett användarvänligt admingränssnitt. Vanligtvis skapas innehåll och lagras i textfiler, ofta formaterade i Markdown, och kompileras till en statisk plats för servern.

Uppgiften är att statiska webbplatser kan vara värd på nästan vilken typ av server som helst. Du behöver inte serverns teknik som PHP, Ruby eller NodeJS för att köra dem. De lägger mindre belastning på servern själv och laddas ofta snabbare.

På admin sidan får du mycket av datahanteringsfunktionerna i en vanlig CMS. Uppgifterna du lagrar kan ringas upp och visas på flera olika sätt, du kan använda mallar och så vidare. Detta gör att du kan hantera bloggar, eller stora och komplexa platser med ett minimum av krångel, jämfört med handkodning allt själv.

Den uppenbara nackdelen är att den som hanterar innehållet och uppdaterar webbplatsen måste vara bekväm att lägga allt innehåll i textfiler. De kan också behöva programmeringskunskap.

Det finns dussintals semi-populära statiska generatorer där ute just nu. Den mest kända, för närvarande, är Ruby-baserade Jeklyll .

Wiki

Det är rätt, du kan få dina egna wikis igång och gratis. De flesta av de bästa wiki-programmen är tillgängliga under en öppen källkodslicens eller en annan, inklusive mediawiki , programvaran som kör Wikipedia.

Naturligtvis är dessa stora, ofta mycket komplexa CMS, med avancerade system för att bestämma vem som får redigera och ändra vad. Deras användningsfall är ganska begränsat per definition: en wiki är en massiv, encyklopedi-stil samling av information, vanligtvis används som referens.

Med det sagt kan du göra en wiki på något ämne, och stora organisationer brukar använda dem för att visa supportrelaterad information för sina produkter.

Enterprise CMS

Dessa är utformade, bra för företag. De är enorma, de är komplexa, de är avsedda att hantera massiva mängder information. Jag är ärlig, jag har aldrig arbetat i företag på företagsnivå, jag är inte helt säker på hur de alla fungerar.

Den allmänna idén, som jag förstår det, är att de sällan har mycket att göra med kundsidiga webbplatser. Enterprise Content Management (eller ECM) hanterar alla dokument som rör de processer som ett företag använder för att få saker att göra. De tjänar främst som en resurs- och referenspunkt för anställda.

De används också för att lagra dokument, både de som gäller företaget och kunderna. Om du till exempel hanterar många kontrakt kan du lagra digitala kopior av dem i en ECM, sorterad efter kund, för enkel åtkomst. ECM fungerar då mycket som ett digitalt filrum.

De tider när de används för kundsidiga webbplatser, tenderar dessa webbplatser att vara massiva, eftersom företagets CMS är utformade för att hantera den mängd information. Tänk på universitetswebbplatser, offentliga portaler och andra webbplatser som dem.

Anpassad CMS

Sist men absolut inte minst har vi det specialbyggda CMS. Dessa kommer i alla former och storlekar, och är utformade för alla tänkbara ändamål.

Förarna är ganska uppenbara. Du får precis vad du vill, och bara det. Detta resulterar oftast i ett mindre, snabbare CMS som bara gör vad du behöver det till. Men om du har behov och budgeten kan du alltid få din favoritutvecklare att bygga mer funktionalitet ovanpå.

Nackdelen är att dina supportalternativ kommer att vara allvarligt begränsade. Om den ursprungliga utvecklaren inte längre är tillgänglig kan en ny utvecklare ha problem med att förstå den gamla koden.

Även när servertekniken blir uppdaterad behöver en anpassad CMS ibland anpassas till dem. CMS utvecklad av en dedikerad tredje part uppdateras automatiskt. Om du har ett anpassat CMS måste du anställa en utvecklare för att göra det.

Anpassade CMS är ofta bäst lämpade för företag som har ett eget internt utvecklingsteam för att arbeta med uppdateringar, uppgraderingar och säkerhetsskorrigeringar.

Uppdatering: Du kan nu läsa del 2 i denna serie .