Orchard: categorizzare contenuti con le tassonomie
Rifacendo il sito di DotNetCampania utilizzando Orchard ci siamo scontrati con l’esigenza di categorizzare i contenuti che pubblichiamo, ad esempio gli articoli, per i quali abbiamo creato un apposito Content Type.

Il modo più indicato per ottenere questo risultato è sicuramente l’uso del modulo Taxonomies, installabile direttamente dalla gallery di moudli raggiungibile dalla dashboard:

Come tutti i moduli di Orchard ricordatevi che va attivato:

Come potete leggere sulla pagina codeplex del modulo, una tassonomia è un insieme gerarchico di termini che serve a classificare contenuti. L’installazione del modulo comporterà l’installazione di un nuovo Field, denominato TaxonomyField, da aggiungere ai Content Type che vogliamo classificare, e una widget, chiamata Taxonomy Widget, che ci servirà a mostrare all’utente la gerarchia dei termini che classificano i nostri contenuti.
Dal menu principale della Dashboard possiamo adesso creare le nostre tassonomie cliccando sulla voce Taxonomies e successivamente sul pulsante Add a taxonomy. A questo punto non dobbiamo far altro che dare un nome alla tassonomia:

Una volta creata la tassonomia possiamo aggiungere dei termini al suo vocabolario, organizzandoli, volendo, anche gerarchicamente. Nel nostro caso abbiamo creato alcune categorie per gli articoli:

Dopo il primo termine del vocabolario, al fine di permettere l’organizzazione gerarchica degli elementi, l’aggiunta di un nuovo termine è preceduta dalla scelta del termine padre, che può chiaramente essere lasciato anche vuoto:

A questo punto non ci resta che aggiungere al nostro content type Article un field di tipo TaxonomyField, che chiameremo Categorie.

Possiamo indicare quale tassonomia usare tra quelle presenti , se restringere ai nodi figli la selezionalibità dei termini e se permettere un solo elemento del vocaboalario per articolo:

Modificando un qualsiasi articolo esistente o creandone uno nuovo possiamo adesso selezionare le categorie a cui associarlo:

Automaticamente la tassonomia sarà presente nella lista articoli del fronend:

Tornando alla dashboard possiamo aggiungere una widget da cui selezionare le categorie di articoli. Clicchiamo su Widgets, aggiungiamo un layer per gli articoli in modo da aggiungere la widget solo alla pagina con l’url ‘~/articoli’ e clicchiamo sul pulsante Add della sezione AsideFirst per mostrare la widget nella colonna sinistra della nostra pagina:

Scegliamo come tipologia di widget la Taxonomy Widget installata con il modulo Taxonomies:

E selezioniamo la tassonomia che ci interessa mostrare:

Ed ecco il risultato:

Peccato che cliccando su una delle categoria dalla widget o anche dai link presenti nella lista degli articoli otteniamo una pagina vuota:

Questo perchè di default Orchard non installa i moduli di indicizzazione dei contenuti, nella fattispecie l’implementazione disponibile dalla gallery è Lucene di cui parleremo in un apposito articolo. Ci basta quindi installare e attivare Lucene dalla Gallery e tornare al TaxonomyField creato nel content type Article per includere la tassomonia tra gli indici:

Ottenendo il risultato voluto:

Vi lascio con un link ad un video di Bertrand Le Roy, PM di Orchard, che mostra proprio come usare le tassonomie: http://www.youtube.com/watch?v=B3jhgTeiEtw&feature=player_embedded
-- Michele