In questi giorni ho avuto l'occasione di realizzare un sito (di cui appena possibile fornirò il link), utilizzando il CMS open source Umbraco. Il primo impatto con il CMS non è dei più felici. Di primo acchito, pur se molto curato esteticamente nell'interfaccia da l'impressinone di essere un po' instabile e soprattutto complesso e di difficile uso. Ma si tratta solo di una impressione, infatti approfondendo la conoscenza per mezzo dei video presenti sul sito del CMS (http://www.umbraco.org) in breve si intuisce da che parte iniziare e come strutturare le cose perchè funzionino bene. L'instabilità poi, pur essendo presente in qualche caso, si concretizza esclusivamente in qualche errore javascript nella parte di amministrazione mentre, quello che conta veramente, ovvero l'engine di front-end pare davvero solido come una roccia. Nonostante l'interfaccia manchi di qualche traduzione dal danese all'inglese, la cosa non da alcuna noia, ma porta alla uce quelli su ci si sono concentrati gli autori e quello che hanno preferito tralasciare, almeno per ora.

Umbraco è un software open source danese, giunto alla versione 2.0 e in procinto di uscire con la 2.1, che ha dalla sua parte soprattutto la flessibilità che permette di realizzare facilmente dei siti i cui contenuti siano personalizzabili dal cliente stesso. Il CMS permette di definire e organizzare dei documenttype. Un documenttype è a tutti gli effetti un contenitore di dati di qualunque genere, che può avere un output generato dall'applicazione di uno o più template annidati gli uni negli altri. Per intenderci, se dovete definire una pagina del vostro sito, questa sarà basata su un documenttype e i vari dati potranno contenere il titolo, piuttosto che un testo o un'immagine che appare nella stessa. Si potrà così definire un documenttype per l'home page, uno per le pagine istituzionali, uno per quelle dei prodotti e poi creare le istanze che saranno organizzate in un albero di navigazione gerarchico. Poi si potranno definire dei template, che saranno utilizzati dai documenttype per generare l'output della pagina stessa. Nel mio caso, un primo template conteneva la parte di head, con tutte le definizioni degli stili comuni a tutte le pagine, fino al tag body compreso, al cui interno vengono inseriti i template figlio. Poi altri template derivano da questo defininendo varie tipologie di pagine all'interno delle quali possono essere inseriti i contenuti provenienti dal documenttype.

Tutto ciò può sembrare complesso, ma vi assicuro che dopo un po' vi apparirà talmente naturale da chiedervi come facevate a lavorare prima. Ma se fosse tutto qua probabilmente non varrebbe la pena di usare Umbraco, ma se si considera la possibilità di scrivere delle macro basate su xsl che generano dei contenuti dinamici sulla base dei dati presenti nei documenttype o della struttura gerarchica del sito, la cosa assume un altro aspetto. Personalmente ho realizzato per intero il motore di news del sito web usando esclusivamente le macro e organizzando opportunemente dei documenttype in un nodo appositamente creato per questo scopo. L'utente è così in grado di creare nuove news aggiungendo nodi figlio ad esso e così facendo pubblicare nuovi contenuti. Un documenttype infatti non è necessariamente una pagina, ma può essere anche una porzione di essa oppure un link o ancora una notizia da mostrare in un elenco cronologico.

Ho lavorato per un tempo equivalente a circa 5 giorni ottenendo dei risultati interessanti nonostante la mia scarsa conoscenza dello strumento. Mentre usavo Umbraco mi rendevo conto con piacere delle sue potenzialità ma allo stesso tempo anche del fatto che ne nasconde molte altre che non ho avuto tempo di scoprire. Umbraco ha solamente due difetti: non supporta il multilingua direttamente, anche se con un po' di ingegno si può aggirare l'ostacolo, come ho fatto io sempre negli stessi 5 giorni. L'alto difetto e che la sua documentazione è praticamente inesistente. C'è un forum da cui attingere la maggior parte delle informazioni, alcuni whitepaper nel sito, e un paio di video che alla fine si rivelano la maggiore fonte di informazioni. Il wiki è praticamente deserto, mentre non c'è traccia di documentazione ufficiale, nemmeno in lingua danese.

La mia impressione finale è che pur se ancora non del tutto esaustivo, Umbraco è un software da prendere in seria considerazione per realizzare siti di piccole o medie dimensioni, mentre non è certo adatto per portali e super-siti che richiedono il trattamento di una mole enorme di pubblicazioni. Umbraco è fatto per semplificare la vita allo sviluppatore e al cliente che non vuole dover chiamare il proprio fornitore ogniqualvolta debba aggiornare l'indirizzo nella home-page. Lo fa bene e con arguzia. Se poi si vuole fare qualcosa di più complesso si può estendere con usercontrols e macro scritte in ognuno dei linguaggi CLR-compliant. Usando questi ultimi si può arrivare anche a fare un piccolo sito di e-commerce affiancando un backoffice tradizionale per i prodotti e tutto quello che vi gira intorno. Sul sito di Umbraco si trovano anche delle estensioni adatte a questo scopo. Personalmente userò Umbraco il pù possibile, e consiglio anche a chiunque si riconosca nel target che ho descritto a fare lo stesso. Non mancheranno le soddisfazioni.

powered by IMHO 1.3

 


per leggere il post originale o inviare un commento visita il seguente indirizzo: CMS: Umbraco, quando un software risolve