Con la Guida precedente hai creato uno o più Tipi di Contenuto dove memorizzare le informazioni della tua app. Vediamo ora i comandi base disponibili all'Amministratore per iniziare a popolare la app di Contenuti. Nelle Guide successive vedremo come preparare e mettere a disposizione degli Utenti funzioni di gestione dei Contenuti più comode ed evolute.
Creare nuovi Contenuti
Appena costruisci un nuovo Tipo di Contenuto, Drupal ti mette subito a disposizione una pagina attraverso cui puoi inserire Contenuti di quel tipo. Come Amministratore, puoi richiamare la pagina di inserimento con Contenuto - Aggiungi contenuto e selezionando il Tipo di Contenuto. Tutti gli altri Utenti possono richiamare la pagina di inserimento al link:
/node/add/tipo_contenuto
dove tipo_contenuto è il nome del Tipo di Contenuto che stai creando, es:
/node/add/attrezzo
| APPROFONDIMENTO: La parola "node" (nodo) nell'indirizzo di richiamo di un Contenuto è un residuo delle prime versioni di Drupal, in cui i Contenuti erano appunto chiamati nodi. Essendo profondamente maturato negli anni, in Drupal si ritrovano spesso vestigia del passato. A mio avviso sono considerabili tali le Tassonomie (e quindi i Termini di Tassonomia, oggi sostituibili con gerarchie di Entità) e i File (oggi inclusi nel concetto di Media), anche se se ne continua a farne un ampio utilizzo ed escono tuttora nuovi moduli che arricchiscono questi tipi di Entità. |
Se l'ordine con cui i Campi sono mostrati nella pagina di inserimento non ti soddisfa, vai in Struttura - Tipi di contenuto e seleziona Gestione visualizzazione form a fianco del Tipo di Contenuto: ti viene mostrata una pagina in cui riordinare i Campi trascinandoli. Nella medesima pagina, per alcuni tipi di Campi puoi anche cambiare la modalità (Widget) con cui compilarli. I Widget disponibili dipendono dal tipo di Campo e dai moduli installati.
Precaricare i Campi di un nuovo Contenuto
In molte situazioni può risultare utile precaricare il valore di uno o più Campi di un nuovo Contenuto, per evitare all'Utente digitazione inutili ed errori. Il Campo può essere precaricato con un valore fisso (scritto nella configurazione del Campo) oppure con un valore dinamico (scritto nel link di lancio della pagina di creazione del Contenuto).
PRECARICARE UN VALORE FISSO
In Struttura - Tipi di Contenuto seleziona Gestione Campi del tipo di Contenuto, clicca Modifica sul Campo, attiva Set default value e digita o seleziona il valore di default: nella pagina di creazione di un nuovo Contenuto di quel tipo il Campo apparirà precaricato con quel valore, che l'Utente potrà modificare. Se il Campo è di tipo Riferimento, per poter selezionare come default una specifica Entità richiamata in quel Campo devi averla già caricata nella app.
PRECARICARE UN VALORE DINAMICO
Questa soluzione consente di precaricare un Campo di un nuovo Contenuto tenendo conto del contesto in cui avviene la creazione. Ad esempio, nella app "Vicinato" il tipo di Contenuto "Richiesta" ha un Campo Riferimento "Attrezzo" che contiene l'Attrezzo chiesto in prestito; volendo presentare all'Utente un comando "Chiedi in prestito" mentre sta guardando uno specifico Attrezzo, precaricheremo nel Campo "Attrezzo" della nuova Richiesta l'identificativo di quell'Attrezzo, evitando così che l'Utente debba riselezionarlo.
Per ottenere questo risultato ci serve il modulo aggiuntivo Entity Prepopulate. Installato ed attivato il modulo, dobbiamo (1) configurare il Campo "Attrezzo" della Richiesta a ricevere via link l'identificativo dell'Attrezzo e (2) scrivere l'identificativo dell'Attrezzo nel link di richiamo della pagina di creazione della Richiesta.
Configurare il Campo a ricevere un valore via link
Per predisporre il Campo "Attrezzo" della Richiesta a ricevere via link l'identificativo dell'Attrezzo:
- vai in Struttura - Tipi di contenuto - Richiesta - Gestisci Campi - Attrezzo - Modifica
- nella sezione Entity Prepopulate digita il Token [current-page:query:attrezzo]
Il Token [current-page:query:attrezzo] (messo a disposizione dal modulo "Entity Prepopulate") consente di recuperare dal link della pagina corrente il valore associato all'argomento "attrezzo". Come sempre, non è necessario ricordare il Token a memoria, perché è tra quelli elencati nella pagina di configurazione del Campo. Non è necessario che l'argomento si chiami proprio come il Campo, funzionerebbe lo stesso se al posto di "attrezzo" scrivessimo "id" o una qualunque altra parola.
Scrivere nel link il valore del Campo
Abbiamo già visto che il link per richiamare la pagina di creazione di una Richiesta è:
/node/add/richiesta
Per precaricare nel Campo "Attrezzo" della nuova Richiesta uno specifico Attrezzo, scriviamo il suo identificativo (es. 371) nel link nel seguente modo:
/node/add/richiesta?attrezzo=371
Vedremo come costruire questi link, deducendo automaticamente dal contesto il valore da scrivere.
Precaricare dinamicamente più campi
Con la stessa tecnica, possiamo precaricare dinamicamente più Campi, concatenandoli in questo modo:
/node/add/richiesta?argomento1=valore1&argomento2=valore2&argomento3=valore3
Il carattere ? inizia l'elenco delle coppie argomento=valore ed il carattere & separa le diverse coppie tra loro.
Ritrovare i Contenuti
Come Amministratore, nella sezione Contenuto trovi un semplice modulo per la ricerca dei Contenuti inseriti. Gli altri Utenti useranno il motore di ricerca di Drupal o - meglio - le Viste che tu metterai a loro disposizione.
Come viene mostrato un Contenuto
Ogni Contenuto inserito è visibile alla pagina:
/node/ID
dove ID è l'identificativo del Contenuto.
Se l'ordine con cui i Campi sono mostrati nella pagina di visualizzazione non ti soddisfa, vai in Struttura - Tipi di contenuto e seleziona Gestione visualizzazione a fianco del Tipo di Contenuto: oltre a modificare l'ordine, puoi anche nascondere Campi o le loro etichette e, per alcuni tipi di Campi, modificare la modalità (Widget) con cui è mostrato il valore. Per nascondere un Campo basta trascinarlo sotto Disattivati.
Vedremo più avanti come migliorare ed arricchire la pagina di visualizzazione dei Contenuti.
Modificare un Contenuto
Per modificare un Contenuto, vai nella sua pagina di visualizzazione e clicca Modifica. Puoi anche andare direttamente alla pagina di modifica con questo link:
/node/ID/edit
Eliminare un Contenuto
Per eliminare un Contenuto, vai alla sua pagina di visualizzazione e clicca Elimina. Puoi anche andare direttamente alla pagina di eliminazione con questo link:
/node/ID/delete
Un Contenuto eliminato non è più recuperabile.
Nascondere un Contenuto
Se vuoi rendere invisibile un Contenuto senza eliminarlo (ad esempio per ripresentarlo più avanti), vai in Modifica del Contenuto e disattiva il Campo Pubblicato.