CMS: Gestione dei contenuti, Utenti e privilegi e Perché Open Source

CMS: Gestione dei contenuti, Utenti e privilegi e Perché Open Source

Introduzione ai CMS

Negli ultimi anni in Internet si è molto parlato dei software CMS, e sono diventati la base di funzionamento per la maggior parte dei siti web. La sigla CMS sta per Content Management System, ossia Sistema di Gestione di Contenuti. E’ quindi necessario anzitutto chiarire cosa si intende per contenuto: qualsiasi unità di informazione, quindi testo, grafica, immagini, suoni, musica, documenti, registrazioni, ed in generale qualsiasi informazione in formato digitale, o comunque adatta ad essere trasferita su supporto informatico. “Contenuto” e “dato” sono due concetti completamente diversi; un contenuto infatti può essere un insieme di dati, costituendo un’informazione completa ed “interessante” per l’utente. Ad esempio, il titolo di un articolo viene considerato un singolo dato nella struttura tecnica della maggior parte dei database, mentre il contenuto è costituito, oltre che dal titolo, dal testo dell’articolo, dalla data di pubblicazione, dall’autore, e così via. Il concetto di contenuto non può quindi prescindere da un’interpretazione “umana”, ovvero dalla considerazione delle esigenze e delle caratteristiche proprie dell’utenza che fruirà delle informazioni.

La “gestione dei contenuti”, idea alla base di ogni CMS, comprende in particolare procedure per la visualizzazione, l’inserimento, la modifica, l’eliminazione e la catalogazione di tali informazioni, in base a regole e workflow prestabiliti.
Un CMS quindi è un insieme organizzato di strumenti volto a facilitare e controllare la gestione e la pubblicazione dei contenuti, in modo pratico ed efficiente. Uno dei punti di forza dei CMS è la trasparenza d’uso per l’utente, che non ha cioè la percezione del “sottosistema tecnico” (database, programmazione, ecc.), comportando così una maggiore semplicità d’uso anche per l’utenza meno esperta o comunque occasionale. Il termine “System” sottolinea anche la gestione centralizzata delle informazioni, con conseguente disponibilità immediata e sincronizzata da tutti i punti di accesso.

La declinazione pratica più diffusa del concetto di CMS è sicuramente quella del WCMS o Web Content Management System, ovvero una piattaforma di gestione dei contenuti interamente online, estendendo le funzionalità di un sito web. Il WCMS permette di creare e gestire documenti e materiali di vario genere da qualsiasi computer collegato ad Internet, tramite un normale browser. I contenuti vengono resi immediatamente disponibili ai visitatori sul sito web, senza necessità di ulteriori passaggi tecnici. Si passa quindi da siti statici e meramente presentativi, a portali dinamici, in continuo aggiornamento, e capaci di offrire all’utente un alto livello di interazione. Un WCMS può essere reso disponibile all’intera globalità di Internet (sito pubblico), oppure all’interno di una intranet aziendale, oppure ancora ad un insieme ristretto di utenti, tramite opportuni sistemi di autenticazione.

L’utilizzo di un CMS può rispondere ad una vasta gamma di esigenze, dall’aggiornamento del semplice sito web, fino ad arrivare alla gestione di grandi quantità di contenuti. Un chiaro esempio è dato dai siti strettamente dedicati all’informazione, come giornali online. Nella maggior parte dei casi, chi si occupa della scrittura degli articoli non è un tecnico informatico, e la creazione manuale di pagine HTML richiederebbe ulteriori passaggi tramite staff di programmatori; la facilità d’uso e la trasparenza che contraddistingue un CMS consente di evitare questi passaggi, creando un canale diretto tra la redazione e il mezzo di pubblicazione. Molti potrebbero essere gli esempi di applicazione che ricalcano esigenze simili: siti per l’accesso a documentazione aziendale (pubblica o riservata), archivi documentali, uffici stampa; tutti casi in cui l’autore dei contenuti, è persona diversa dallo staff che si occupa della gestione tecnica e della manutenzione del sito.

CMS: Gestione dei contenuti, Utenti e privilegi e Perché Open Source

Separazione dati e presentazione

La tecnica alla base di ogni CMS scaturisce dal concetto di separazione dei dati dalle loro modalità presentazione. Comunemente i dati, intesi genericamente come tutte le informazioni inserite nel CMS, vengono memorizzati in un database, di cui i software di gestione più diffusi in ambito web sono MySQL e Microsoft SQL Server; questo comporta notevoli vantaggi, rispetto alla memorizzazione di normali pagine formattate (HTML), in particolare:

  • possibilità di accedere ai dati con diverse modalità;
  • possibilità di elaborare i dati secondo le necessità;
  • possibilità di ricerca;
  • gestione semplificata degli accessi e delle modifiche da parte di più utenti;
  • esecuzione semplificata di backup.

La presentazione dei contenuti avviene quindi attraverso delle “pagine modello”, chiamate generalmente “template”, dove i dati vengono elaborati e visualizzati nella modalità richiesta. E’ quindi sufficiente cambiare template per ottenere, a partire dalle stesse informazioni, diverse modalità di presentazione.
Nei siti web “statici”, composti da pagine HTML e stili CSS2, i dati erano strettamente legati alla loro presentazione grafica; l’autore o editore dei contenuti doveva quindi conoscere anche le basi tecniche dei linguaggi HTML e CSS, ed utilizzare software di elaborazione come Microsoft Frontpage e Macromedia Dreamweaver, dove è necessario operare contemporaneamente sui dati e sulla loro presentazione grafica.

Con i Web CMS invece è possibile implementare una forte separazione tra autore dei contenuti e web designer. L’autore ha accesso ad un’apposita piattaforma dove inserire e gestire i contenuti in autonomia, senza preoccuparsi del template e interferire con la presentazione grafica, senza la necessità di una particolare preparazione tecnica. Il web designer, grafico esperto e conoscitore di linguaggi come HTML e CSS, si occuperà della creazione e dell’eventuale modifica del template, a sua volta senza rischio di interferire con i dati già presenti nel database.
Caratteristica importante dei template è la modularità, la possibilità cioè di includere delle sezioni attivabili o disattivabili, in base alle scelte dell’amministratore, o a particolari regole definite. Questa caratteristica consente tra l’altro la separazione tra la figura di web designer e quella di amministratore del sito (webmaster): il primo può creare il template, comprensivo di moduli opzionali e di tutta la grafica necessaria, e sarà poi il secondo a scegliere di volta in volta quali blocchi attivare, senza per questo dover conoscere i dettagli di implementazione HTML e CSS.

L’uso di queste tecniche in un sito web, consente di creare più versioni del sito, oltre quella principale, condividendo gli stessi dati, e mantenendo quindi univoca l’operazione di inserimento delle informazioni. E’ molto frequente ad esempio la creazione di una versione “accessibile” del sito, ottimizzata per persone con disabilità, quindi con caratteri grandi, colori ad elevato contrasto e con modalità di navigazione alternative. Un altro esempio è dato dalle versioni “mobile”, ottimizzate per l’accesso da dispositivi mobili (telefoni cellulari, palmari), con una grafica minimale ed una più accurata selezione dei contenuti da visualizzare.

Una particolare tipologia di pubblicazione dei dati nel web, che sta ottenendo sempre maggiore successo tra gli utenti, è data dai “feed RSS”. RSS definisce una semplice struttura (basata sul linguaggio XML) adatta a contenere un insieme di contenuti, ognuno dei quali suddiviso in vari campi (data, autore, titolo, testo, ecc.). In un feed RSS non vi è quindi una vera e propria formattazione o presentazione grafica, bensì i contenuti vengono resi disponibili come “dati grezzi”, generalmente in formato unicamente testuale. Un feed RSS può essere visualizzato tramite appositi software, chiamati RSS readers (lettori di RSS) o aggregatori, così chiamati in quanto possono recuperare e presentare contemporaneamente i contenuti provenienti da più sorgenti RSS. Si potrebbe quindi dire che, in questo caso, il template non è stabilito dal creatore del sito web, ma dall’utente finale, che può visualizzare a suo piacimento le informazioni, portando ad un livello ancora più elevato il concetto di separazione tra dati e presentazione. La maggior parte dei Web CMS comprende, di base o con pacchetti aggiuntivi, la possibilità di pubblicare i contenuti tramite feed RSS.

Utenti e privilegi

Ogni CMS deve prevedere la possibilità di differenziare i livelli di accesso alla piattaforma, ed è quindi fondamentale includere un sistema di gestione degli utenti. Generalmente il riconoscimento dell’utente da parte del sistema avviene tramite l’immissione di nome utente e password, assegnati dall’amministratore del CMS o scelti dall’utente stesso in fase di registrazione. La maggior parte dei Web CMS richiedono obbligatoriamente anche l’associazione di un indirizzo e-mail valido ad ogni account.
Gli utenti del sistema sono suddivisi in gruppi, ognuno dei quali ha associate specifiche autorizzazioni di accesso; i dettagli di implementazione nei vari CMS sono molto diversi, tuttavia è possibile definire alcuni gruppi principali.

  • Pubblico: un gruppo fittizio, applicato se non viene effettuato l’accesso come utente; in alcuni casi si parla anche di “utente ospite”, e nel caso dei Web CMS definisce le possibilità di consultazione del sito web da parte del semplice visitatore, sprovvisto di un account. Generalmente a questo livello è consentita la sola visualizzazione dei contenuti, senza alcuna possibilità di interazione.
  • Utenti registrati: gruppo che caratterizza ogni utente che abbia ricevuto dei codici identificativi per l’accesso al sito, senza tuttavia particolari autorizzazioni; questo livello può essere utilizzato per limitare l’accesso ad aree riservate, oppure per consentire un primo livello di interazione (inserimento di commenti, messaggi), previa identificazione del visitatore.
  • Autori: gli utenti di questo gruppo, avranno la possibilità di inserire (ed eventualmente pubblicare e modificare) autonomamente i contenuti nel CMS. L’identificativo dell’utente autore di un contenuto viene memorizzato nel database.
  • Amministratori: gli utenti di tipo amministratore sono abilitati, oltre che alla gestione dei contenuti, anche alla configurazione ed alla gestione del sistema CMS in tutte le sue funzioni. Tra le funzioni di un amministratore vi è selezionare i componenti da attivare e rendere visibili, gestire gli utenti e definire per essi i livelli di accesso.

Perché Open Source?

Quasi tutti i CMS più utilizzati vengono distribuiti gratuitamente, con licenza open source, in cui cioè viene reso disponibile anche il codice sorgente.
Va detto anzitutto che nel caso del linguaggio PHP, il più utilizzato, non è prevista la compilazione degli script; il codice sorgente deve rimanere quindi disponibile, per funzionare, e difficilmente quindi un progetto PHP può essere distribuito in altre modalità, a meno di utilizzare particolari tecniche di criptazione.

Tralasciando tuttavia questo aspetto meramente tecnico, la scelta dell’open source comporta soprattutto un modo diverso di sviluppare il software, di evolverlo ed espanderlo. Il team di sviluppo non è chiuso e rigido, ma al contrario riceve i contributi da tutta la comunità di utilizzatori e programmatori che gravitano attorno al progetto. Questa collaborazione può assumere vari livelli, dalla segnalazione di errori (bug) o mancanze (feature request) alla vera e propria programmazione del codice. Grande importanza assume la condivisione di componenti aggiuntivi, sviluppati da terzi e spesso distribuiti gratuitamente, contribuendo così, in modo indiretto, all’espansione del progetto.
I principali vantaggi di un software open source sono quindi il costo ridotto (solitamente la sola spesa per il server o il servizio di hosting), la totale possibilità di personalizzazione, l’elevata disponibilità di componenti aggiuntivi, la possibilità di confronto con altri utenti, tramite forum dedicati, in cui spesso si riesce a risolvere (senza spesa alcuna) i problemi più comuni.

E’ bene tenere conto però anche degli svantaggi che un modello di questo tipo può portare. Non vi sono infatti garanzie sul supporto, sull’assistenza tecnica e sull’aggiornamento del software, essendo il prodotto sviluppato gratuitamente e su base volontaria. Ecco allora chiara l’importanza di scegliere un CMS molto diffuso e organizzato, come è Joomla. Non vi sono garanzie “ufficiali” che lo sviluppo del software prosegua regolarmente, tuttavia il progetto ha raggiunto dimensioni e modalità di organizzazione tali, da dare ampi margini di sicurezza.

Pubblicato da Vito Lavecchia

Lavecchia Vito Ingegnere Informatico (Politecnico di Bari) Email: [email protected] Sito Web: https://vitolavecchia.altervista.org

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *