I sistemi di gestione dei contenuti (CMS, o Content Management System) sono varie applicazioni che aiutano a creare e modificare informazioni in formato digitale.
Le applicazioni di gestione dei contenuti solitamente dispongono di una serie di funzioni e funzionalità che consentono la gestione di documenti e contenuti digitali (immagini, audio, ecc.) in modo collaborativo.
Ad esempio, diversi dipendenti di un'azienda o di reparti diversi possono collaborare secondo determinati stili e processi: prima lavorano i creatori o gli autori, poi gli editor, altri manager approvano i contenuti, gli amministratori configurano il sistema, ecc.
Sembra un discorso senza senso, lo so! Semplifichiamo:
Ciò che oggi definiamo un sistema di gestione dei contenuti funziona in gran parte sul web: un'applicazione web che consente a diverse persone di accedere, aggiungere contenuti, materiali o risorse e infine pubblicarli sul web (pubblico) o all'interno di un'azienda, solo per dipendenti o collaboratori (intranet).
In passato, esistevano sistemi interni, su grandi reti aziendali o computer, che non erano basati sul Web e accessibili tramite browser, ma erano applicazioni Windows, Linux, ecc.; al giorno d'oggi, invece, quasi tutti i CMS sono basati sul Web, funzionano in un browser, da un server centrale e sono accessibili da qualsiasi luogo.
Uno dei sistemi di gestione dei contenuti più popolari è WordPress, che permette di creare siti web, aggiungere post di blog, pagine, testi e pubblicarli sul web. Se parliamo solo di web, WordPress è probabilmente il più diffuso (si stima che quasi il 30% dei siti web su Internet sia gestito da WordPress) dal suo lancio nel 2003. Inoltre, WordPress è gratuito e "aperto", il che consente a chiunque di modificarlo ed estenderlo a proprio piacimento.
Subito dopo WordPress ci sono Joomla e Drupal, seguiti da molti altri con un pubblico più ristretto.
Struttura di un sistema CMS
Un sistema di gestione dei contenuti è composto da due parti:
- La parte amministrativa è l'applicazione che consente agli utenti di creare risorse, articoli, materiali, pagine e così via. Questa interfaccia si basa su aziendali , come un sistema di permessi, una gerarchia e determinati processi per la creazione e la modifica delle risorse.
- La parte di presentazione è l'interfaccia che presenta le risorse di cui al punto 1 al pubblico di destinazione. Nel caso di un CMS per la gestione di siti web (come WordPress), la parte di presentazione è il sito web pubblico, a cui accedono i visitatori, il pubblico in generale.
Funzioni di un sistema CMS

Un sistema di gestione dei contenuti include un minimo di funzioni che riguardano l'accesso degli utenti e l'assistenza nella creazione, modifica e pubblicazione delle informazioni con cui lavorano.
Funzioni di accesso
Sistema di login: i CMS includono un sistema di login per gli utenti. La parte amministrativa deve essere protetta per impedire modifiche non autorizzate, quindi ogni utente ha un account con nome utente o password.
Sistema di permessi: non tutti gli utenti hanno gli stessi accessi e permessi. In ogni organizzazione esistono diverse gerarchie e tipologie di dipendenti e creatori di contenuti. In WordPress, ci sono utenti normali, editor e amministratori. Ogni tipo di utente ha un diverso set di permessi.
Gli utenti normali non hanno gli stessi privilegi degli amministratori, che hanno accesso all'intero sistema per modifiche e configurazioni. È importante analizzare un sistema attraverso la lente delle autorizzazioni, soprattutto se si dispone di un team di collaboratori più numeroso.
Supporto multilingua: un CMS affidabile consente l'utilizzo in più lingue. Se il tuo team è internazionale, questo è essenziale. Gli utenti possono cambiare la lingua in cui viene visualizzata l'interfaccia di amministrazione per semplificare la collaborazione.
È possibile utilizzare più lingue anche per la creazione di contenuti: ad esempio, potresti avere un team in cui alcuni autori scrivono articoli in una lingua e altri traducono questi contenuti in un'altra. Un buon CMS ti consente di gestire contenuti in più lingue contemporaneamente.
Funzioni di gestione dei contenuti
Creazione di contenuti: i CMS consentono di aggiungere articoli, pagine, post di blog, notizie, immagini e altro ancora. Devono avere un'interfaccia intuitiva e facile da usare, molti nascondere le funzionalità di modifica del codice sorgente (come HTML) e offrire un editor simile a Microsoft Word o qualcosa di più snello. Pertanto, gli utenti non hanno bisogno di conoscere la programmazione o la formattazione HTML, ma si concentreranno sui contenuti.
Indicizzazione e ricerca: un buon CMS dispone di funzioni per indicizzare i contenuti, organizzarli e ritrovarli attraverso ricerche, filtri, ecc. È fondamentale, soprattutto quando si lavora in un'organizzazione che produce molti contenuti (grande azienda, redazione di un quotidiano, agenzia di stampa), poter organizzare e trovare i contenuti in modo rapido e semplice. Pertanto, il motore di ricerca è essenziale, così come la possibilità di aggiungere informazioni aggiuntive a ciascun articolo e contenuto, come meta tag, descrizioni, parole chiave e proprietà aggiuntive (data di aggiunta, data di pubblicazione, categorie, autore, ecc.).
Revisioni e controllo delle modifiche: i sistemi CMS più avanzati includono funzioni per la registrazione delle modifiche ai contenuti. Per ogni articolo o documento, viene registrata non solo la versione più recente, ma anche tutte le versioni precedenti e le modifiche apportate. Memorizza inoltre chi ha apportato la modifica, quale parte del documento, quando è avvenuta la modifica e qual era la versione precedente.
Queste funzionalità, unite alle regole e ai privilegi menzionati in precedenza, aiutano a creare una traccia di controllo di tutti coloro che hanno lavorato su un determinato documento e, se lo si desidera, a ripristinare una versione precedente.
Acquisizione e archiviazione dei documenti: un'altra funzionalità comune nei sistemi di gestione dei contenuti è la scansione, l'importazione e l'archiviazione dei documenti stampati. È possibile caricare documenti in vari formati (immagini, documenti Word, Excel, ecc.) e organizzarli per un successivo recupero. Un database storico è molto utile per aiutare un'azienda a risparmiare spazio pur mantenendo l'accesso ai documenti per audit, contabilità, ecc.
Spesso, il processo di acquisizione include anche il riconoscimento ottico dei contenuti (OCR) e l'indicizzazione del testo rispetto ai file scansionati. In questo modo, questi documenti non sono più solo immagini, ma possono essere ricercati, filtrati, ecc.
Funzioni di pubblicazione: quando arriva il momento di pubblicare articoli, post di blog, ecc., un sistema di gestione dei contenuti rende questa operazione molto rapida e semplice tramite un'interfaccia basata su moduli.
Sui siti web, non è responsabilità di chi crea i contenuti pubblicarli e formattarli correttamente per la pubblicazione. I sistemi CMS dispongono di template, che vengono combinati con l'articolo al momento della pubblicazione, in modo che la pagina web venga composta automaticamente da questi, senza intervento di codice.
WordPress include temi che possono essere installati o sostituiti su un intero sito web, in modo che il design possa essere completamente modificato con un clic, mantenendo invariati i contenuti. I template astraggono la parte di presentazione dei contenuti e prevengono gli errori, garantendo la coerenza del design da una pagina all'altra. Un altro vantaggio è che chi gestisce i contenuti non ha bisogno di alcuna conoscenza di programmazione o web design.
Funzioni di ottimizzazione (SEO): la maggior parte dei sistemi di gestione dei contenuti (CMS) che mirano a pubblicare informazioni su Internet dispone almeno di funzioni di ottimizzazione per i motori di ricerca di base. Queste possono includere: l'aggiunta di meta tag (parole chiave, descrizioni, titoli), tag ALT alle immagini e la modifica degli URL degli articoli.
WordPress offre queste funzioni, ma consente anche di estenderle installando plugin (moduli) che possono migliorarle o addirittura sostituirle, con un intero sistema che se ne assume la responsabilità. Nell'area SEO, ad esempio, è possibile installare il modulo Yoast, che sostituisce completamente le funzioni SEO di WordPress, offrendo molte più possibilità (analisi dei contenuti, controllo della densità delle parole chiave, generazione di sitemap e altro ancora).
Funzioni specializzate
I sistemi di gestione dei contenuti possono anche offrire funzioni specializzate, a seconda delle esigenze. Se si utilizza WordPress, la semplice installazione del sistema non offre queste funzioni, ma è necessario installarle aggiungendo moduli (plugin).
Puoi quindi trasformare quasi completamente il tuo sistema aggiungendo e-commerce, risorse umane, elaborazione delle immagini, gestione degli eventi, calendario e una miriade di altre funzionalità: tutto ciò che devi fare è trovare il plugin giusto (o crearlo tu stesso).
Sebbene WordPress non sia stato originariamente creato per questo scopo, l'architettura dei plugin consente a chiunque di estenderne le funzionalità a proprio piacimento, fino alla possibilità di installare determinati "framework" (intere piattaforme) che incorporano non solo temi/template, ma anche moduli per creare pagine visivamente (vedere Divi, Elementor, Gravity, ecc.).
I sistemi CMS più specializzati includono questa funzionalità già pronta all'uso (se si prevede di farlo o se un'azienda desidera creare il proprio CMS e avere il pieno controllo sulle funzionalità e sul suo funzionamento), oppure possono crescere nel tempo in base alle esigenze.
Ad esempio, il mio sistema CMS (CCIDESQ) è nato in modo molto semplice nel 2002 come piattaforma per la gestione di un database di prodotti, il controllo delle scorte e l'anagrafica clienti per un distributore di libri. Ho iniziato a svilupparlo perché a quel tempo WordPress non esisteva e gli altri sistemi disponibili sul mercato erano molto limitati. Essendo una persona incline a sviluppare autonomamente gli strumenti di cui avevo bisogno, ho iniziato a imparare e a lavorare. Il sito su cui state leggendo questo articolo utilizza CCIDESQ, non WordPress!
Man mano che il sistema veniva utilizzato e adottato, sono emerse molte idee per espanderlo e, lungo il percorso, ho aggiunto moltissime funzioni e moduli con nuove funzionalità: ordini, clienti, fatturazione, carrello della spesa, gestione delle risorse umane, fornitori, funzioni fiscali (registri IVA, report di gestione), integrazione con i sistemi POS, servizi postali e molto, molto altro!
In pochi anni, CCIDESQ è diventato molto più di un semplice sistema di gestione dei contenuti: è diventato quasi una piattaforma ERP completa. In poco tempo, si è espanso in nuove aree: gestione di studi legali, archiviazione documentale, immobiliare, pianificazione, eventi, social media, blogging e altro ancora.
Funzioni di trasferimento delle informazioni
Una moderna piattaforma CMS non può funzionare in modo isolato . Che si voglia pubblicare contenuti sul web (uno o più siti web), distribuirli su piattaforme di aggregazione o far interagire il sistema con altri sistemi e applicazioni, non ci vuole molto prima di giungere alla conclusione che è necessario un modo per "aprire" il sistema.
La soluzione è aggiungere API al sistema.
Nel caso del mio sistema CCIDESQ, dopo alcuni anni di funzionamento isolato, in un paese, per un cliente, è emersa la necessità di far funzionare il sistema in più paesi e, non solo, di comunicare con altre copie installate a livello internazionale.

Quando si sviluppano siti di e-commerce per un cliente con attività internazionali, è abbastanza normale dover scambiare informazioni (informazioni sui prodotti, scorte, prezzi, traduzioni, articoli e altro) per ridurre il lavoro ripetitivo, facilitare la comunicazione e snellire le operazioni.
Da qui l'esigenza di sviluppare un'API (Application Programming Interface), che consenta ai sistemi di "parlare tra loro".
Era inoltre necessario che l'API supportasse la comunicazione con le app mobili (iOS, Android, ecc.), in modo che potessero essere utilizzate da agenti o clienti senza accesso a un computer e consentire loro di creare un account, acquistare prodotti e monitorare lo stato degli ordini direttamente dal proprio cellulare. Approfondirò l'argomento CCIDESQ in un articolo successivo.
L'API fa parte del livello di scambio dati e offre funzionalità avanzate a chi desidera collaborare con la tua azienda. Ad esempio, se un'azienda desidera creare un sistema di sincronizzazione di stock con un sito web o un database gestito dal tuo sistema CMS, un'API standardizzata consente all'azienda di formattare i dati in modo standard e di trasmetterli, e l'API li accetterà, li comprenderà e li memorizzerà nel sistema, il tutto senza modifiche al CMS.
Tutte le applicazioni distribuite oggi utilizzano le API per comunicare. Le app moderne non sono più monolitiche (un'unica grande app che incorpora tutte le funzionalità in un unico posto), ma sono separate, distribuite, modulari e scalabili. La comunicazione tra tutti questi componenti disparati avviene tramite API e protocolli REST.
In questo contesto, la funzionalità di un CMS non ha limiti! La nuova frontiera è il CMS headless (senza interfaccia predefinita), ma solo con un database e un'API che consente di aggiungere, cercare, modificare e recuperare dati in modo trasparente. Con un CMS headless, il team che lavora con i dati non è più vincolato a una singola interfaccia di amministrazione, ma utilizzando le API, i protocolli creati nel CMS headless, può costruire la propria interfaccia e utilizzare i dati nel modo desiderato.





