Spesso, nelle community di Web Developers e Web Designers, si discute su quale sia il miglior CMS da utilizzare per realizzare i propri lavori. Si discute su quale sia il:
– più performante
– più modificabile
– più personalizzabile
– più seo-friendly
– più in grado di fare il caffè ecc. 😛
C’è chi preferisce Joomla, chi Drupal o chi WordPress…io preferisco quest’ultimo e lo confesso spudoratamente 😀
Senza fossilizzarci su quale sia il migliore tra i tre, senza dubbio, sono i CMS Open Source più utilizzati e di maggior successo al mondo. La domanda che ora mi pongo (e al quale cercherò di dare una risposta in perfetto stile Marzullo) è la seguente:
Quali caratteristiche deve avere un CMS per ottenere il gradimento dei professionisti, Developers o Designers che siano?
Dando per scontato che il CMS deve essere Open Source e scritto in PHP (sono uno sviluppatore LAMP, dovevo specificarlo e sottolinearlo 😀 ), vediamo cosa deve offrire a chi intende servirsene:
01) Pattern architetturale
Il cms deve basarsi su un pattern architetturale (come l’MVC) che prevede componenti software distinti e separati ma che “interagiscono” per il funzionamento dell’applicazione. In caso di modifiche “importanti”, magari per progetti altamente personalizzati, è molto importante scegliere un CMS basato su un’architettura conosciuta o, comunque, facile da comprendere.
02) Core e API
Il funzionamento del cms deve avvenire tramite un core ben progettato e, soprattutto, ben scritto che si componga di un set di API/Oggetti/Functions completo (database, FTP, Cache ecc.) e ben documentato.
03) Sistema di templating
Che si avvalga di un template engine tipo Smarty o di un sistema a “viste” come quello di WordPress (che usa il Loop con i “template tags”), il cms, deve mettere a disposizione dei Designers un sistema di templating che permetta una facile e veloce integrazione di layout realizzati in HTML/CSS.
03) Sistema di Plugins
Un cms sopra ogni cosa deve essere “modulare“; le sue funzionalità devono essere assolutamente “estendibili” tramite un sistema di “plugins” che permetta una facile e veloce installazione di moduli “extra” (i plugins, moduli o componenti, come preferisci chiamarli) per qualsiasi esigenza.
04) La SEO è tutto
Un cms deve essere di “default” ottimizzato per i motori di ricerca. L’aspetto SEO è di primaria importanza. Puoi realizzare il miglior sito del mondo ma, se non sei ben posizionato sui motori di ricerca, il tuo bel sito lo vedi solo tu e tua nonna…e, poi, voglio vedere come spieghi a tua nonna che sei un valido web designer e che, il sito, l’hai realizzato con WordPress 😛
05) User-Experience del backend
A parte il lato tecnico c’è, comunque, da considerare la gestione dei contenuti e delle funzionalità del cms. Per questo, il pannello amministrativo, deve essere ben strutturato, usabile, che offra una buona user-experience.
Tu cosa ne pensi? Quali caratteristiche deve avere un CMS per essere di successo? Condividi la tua idea con un commento 😉
Personalmente preferisco joomla. Ma i punti che hai elencato sono tutti validi e trasversali.
Aggiungeri anche la comunity che c’è alle spalle che diventa.un fattore vincente in molti casi.
Maurizio
Secondo il mio punto di vista non esiste un CMS migliore in assoluto. Penso che WordPress sia adatto a un’utenza Blogger, Drupal a un’utenza più aziendale ed esigente. Sono scelte diverse che si fanno in base al tipo di competenze che ognuno di noi ha…. solitamente la tendenza è quella di innamorarsi di un CMS in particolare e poi sfruttare sempre quello perchè lo si conosce bene…. ma in realtà tutti hanno pregi e tutti hanno difetti.
Assolutamente si, come tutte le cose, anche i CMS hanno tutti i loro pregi e i loro difetti. Spesso si preferisce uno anzichè un altro per una specifica caratteristica o addirittura per il fattore “simpatia”.
In questo post volevo portare l’attenzione, però, non tanto sui CMS (o su quale sia il migliore) ma su quali caratteristiche devono avere per essere validi e ottenere successo 🙂