Buone pratiche per realizzare un sito Joomla - I° parte

Recentemente ci ha contattato un cliente per la realizzazione di una applicazione. Quello che doveva essere un lavoro abbastanza veloce si è trasformato in un progetto di una certa difficoltà. Il motivo? Hanno implementato almeno una mezza dozzina di componenti personalizzati quando potevano essere più che sufficienti gli articoli.

 

Un secondo progetto è relativo a un sito governativo con quasi 50 milioni di visite al mese. Anche in questo caso ci siamo trovati di fronte a qualcosa che può essere definito come un "evidente abuso di Joomla". Oltre una mezza dozzina di estensioni personalizzate per gestire PDF, file audio, video. Anche in questo caso gli articoli sarebbero stati più che sufficienti.

Questi casi ci hanno spinto a condividere alcune regole che seguiamo da molto tempo, ma che non abbiamo mai messo nero su bianco. Ecco a voi il nostro “manuale non scritto” sulla realizzazione di siti Joomla.

Prendersi il tempo necessario per capire come organizzare e strutturare il sito

Così come la costruzione di un edificio ha bisogno di un bravo architetto; allo stesso modo un ottimo sito necessita di una ottima organizzazione dei contenuti. È importante pensare ai tipi di contenuti del sito: articoli, documenti, video etc. Altrettanto importante è definire una strutturazione logica dei contenuti. Ad esempio: un sito web aziendale può avere case study, blog, profili del team e informazioni sui prodotti e i servizi offerti. Non bisogna avere timore di giungere ad un valido compromesso tra la struttura ideale del sito e un sito che sia agevolmente gestibile.

Comprendere le potenzialità di un CMS come Joomla

Joomla gestisce molto bene i contenuti ed è molto importante comprenderne a fondo le potenzialità per evitare errori da principianti. Alcuni degli elementi chiave di Joomla sono:

  • Articoli: si tratta degli elementi fondamentali. Ogni articolo generalmente corrisponde ad un contenuto.
  • Campi personalizzati: è possibile inserire dei campi aggiuntivi personalizzati per gli articoli. Tali campi possono essere applicati a tutti gli articoli o limitati ad una specifica categoria di articoli.
  • Categorie: le categorie consentono di organizzare e strutturare gli articoli. Un articolo può appartenere ad una sola categoria.
  • Tag: i tags (in italiano letteralmente etichette) sono delle vere e proprie parole chiave che legano insieme gli articoli che trattano lo stesso argomento. Da notare che un articolo può appartenere a più tags, per cui diventa possibile collegare articoli appartenenti a categorie diverse.
  • Menu e layout: Joomla offre diverse modalità per presentare le categorie, i tags e gli articoli ai visitatori. E’ fondamentale capire le potenzialità delle varie modalità di presentazione dei contenuti per trovare quella che è più adatta alle proprie esigenze.

Cercare e valutare moduli, componenti, plugin già esistenti

Nella Joomla Extensions Directory (JED) sono presenti moltissime estensioni che possono essere utilizzate per estendere le funzionalità di Joomla. Bisogna prendersi il tempo necessario per identificare le proprie esigenze e valutare le estensioni disponibili prima di fare una scelta. Assicurandosi che lo sviluppatore dell'estensione sia attivo e rilasci regolari aggiornamenti per evitare di restare bloccati per aver scelto un'estensione che non viene più supportata.

Valutare attentamente se si ha bisogno di estensioni personalizzate

In molti casi tale valutazione viene completamente bypassata e vengono sviluppate estensioni personalizzate che non sono necessarie. I due casi di cui abbiamo parlato all'inizio sono esempi reali di tale mancanza di valutazione. La maggior parte delle esigenze di un sito può essere soddisfatta strutturando correttamente articoli, categorie, tags e campi personalizzati. Gli esempi di componenti sviluppati inutilmente sono numerosi:

  • si realizza un componente personalizzato per allegare un PDF ad un articolo quando è possibile farlo semplicemente aggiungendo un campo personalizzato di tipo caricamento file
  • si realizza un componente personalizzato per inserire dei video YouTube quando è possibile farlo semplicemente aggiungendo un campo personalizzato contenente l'URL del video Youtube
  • si realizza un componente personalizzato perché alcuni articoli hanno anche un coautore quando è possibile farlo semplicemente aggiungendo un campo personalizzato contenente il nome del coautore.

E’ sempre opportuno sottolineare quanto sia importante evitare l'uso, se non necessario, di estensioni personalizzate che possono comportare un ulteriore impegno di risorse non prevedibile, ad esempio:

  • se serve la funzionalità di ricerca, bisognerà sviluppare anche un plugin di ricerca per l'estensione personalizzata
  • se serve il supporto dei tags, bisogna integrare i tags nell’estensione personalizzata.

Apprendere il sistema dei menu, i layout e gli overrides

I "layouts" consentono di presentare gli stessi articoli in modi diversi. Il "layout blog" presenta gli articoli con un'immagine, il titolo e una porzione di testo introduttivo. Il "layout elenco" presenta gli articoli sotto forma di semplice elenco tabulare visualizzando solo i titoli. È possibile realizzare un layout personalizzato e chiamarlo, ad esempio "grid layout" per mostrare gli articoli in una griglia.

È anche possibile sovrascrivere i layout esistenti con la tecnica degli overrides nel caso in cui si vogliano modificare i layout predefiniti di Joomla. La tecnica degli override garantisce che le proprie modifiche non vadano perse quando Joomla viene aggiornato. Bisogna tenere presente che è necessario confrontare i layout personalizzati con i layout predefiniti dopo gli aggiornamenti di Joomla per verificare se le proprie modifiche continuano a funzionare.

Vantaggi nel ridurre l'uso delle estensioni

Usare meno estensioni significa meno azzerare gli eventuali problemi che possono insorgere aggiornando Joomla. Utilizzare molte estensioni, al contrario, implica trascorrere molto tempo per verificare la compatibilità di ciascuna estensione con le nuove versioni di Joomla. L'uso massiccio di estensioni può compromettere la sicurezza e le prestazioni del sito. Per di più, in molti casi, oltre a fare un uso eccessivo di estensioni neppure vengono disinstallare quelle inutilizzate. E’ fondamentale rendere un sito facilmente manutenibile utilizzando solo le estensioni necessarie.

Nella seconda parte affronteremo altre problematiche quali la scelta di un buon servizio di hosting, proporremo un elenco di estensioni indispensabili, e affronteremo i problemi relativi alla sicurezza e alle prestazioni.

--

Traduzione dell'articolo The right way to build a Joomla site - Part I di Ashwin Date